今天弄ecshop手机模板的时候,发现首页的广告图出不来,js报错,经过单独拿js代码出来测试,发现是正常显示的,那就判断了应该是与smarty的模板产生了冲突。

源码是这样子的,可是经过smarty模板的编译后,变成了,可以看出与eval函数有冲突了。要不修改smarty的相关文件,要不就换一种方式,第一种方式修改核对代码是很耗时间的,于是乎,换一种方式是比较好的选择。把eval('document.getElementById("pic").src=img'+nn+'.src'),换成document.getElementById('pic').src=this['img'+nn],不知道为什么,this不能解析带'.'变量,所以还是需要改造一下js,才能用。

改造前的代码:

改造后的代码: