生命不息,奋斗不止/创造价值-传递价值-获得价值
所谓迷茫,就是才华配不上梦想 每一个让你难堪的现在,都有一个不够努力的曾经

简单方法解决ecshop和jquery冲突

ecshop 和 jquery 冲突的问题由来已久。让我等开发人员很是头痛。
网上一搜大多说是和 transport.js 的 Object.prototype.toJSONString 冲突,解决方案大多或复杂或繁重。

只要将这段代码

if (Object.prototype.toJSONString){
     var oldToJSONString = Object.toJSONString;
     Object.prototype.toJSONString = function(){
       if (arguments.length > 0){
         return false;
       }else{
         return oldToJSONString.apply(this, arguments);
       }
}

重新定义了冲突的 toJSONString 函数。
放到 /library/page_header.lbi  后面即可。

也就是 加载  transport.js 后,再执行一次本函数就行了。
可以看下图:

简单方法解决ecshop和jquery冲突
注意: page_header.lbi 是每个页面都会包含的页面。其中已经加载了冲突的 transport.js 文件。

以后都不需要再次加载了。如果发现后面的模板又加载了该文件请直接删除该代码。防止有重新定义 toJSONString  函数。

当然,您要是懒得处理,将上面的代码放到页面最底部是省事情的。

好笨啊。最好的方法是放到 transport.js  的底部。这样无论你重复调用 transport.js 几次都没有问题了。

<!–jack备注开始–>

在修改transport.js前备份一个transport.js为transports.org.js

然后修改admintemplatespageheader.htm第9行

{insert_scripts files=”../js/transport.js,common.js”}

{insert_scripts files=”../js/transport.org.js,common.js”}

<!–jack备注结束–>

已知会与  global.js 冲突。 请不要加载  global.js

赞(0)
未经允许不得转载:jack361博客 » 简单方法解决ecshop和jquery冲突

评论 抢沙发

评论前必须登录!

 

如果你爱我或恨我,请↓

联系我