当前位置:首页 > CMS教程 > ecshop > 列表

Ecshop与jQuery冲突最简单的解决办法!

发布:smiling 来源: PHP粉丝网  添加日期:2013-11-15 21:40:40 浏览: 评论:0 

SHOP与JQUERY冲突的问题由来已久,网上很多解决方法比较繁琐,而且在某些地方还会出错,如产品比较功能等,本文中的方法结合了网上最新公开文章与本人实际开发的经验,基本上可完美解决ECSHOP与JQUERY的冲突。经测试,兼容ECSHOP原有所有的功能,包括产品比较功能,而且修改步骤简单明了:

1、修改文件:/js/transport.js

在文件最底部增加代码:

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

2、修改文件:/js/compare.js 查找代码:

this.timer = window.setInterval(this.relocation.bind(this), 50); 修改为:

this.timer = window.setInterval(this.bind(this.relocation,this), 50);

查找代码:

astScrollY : 0

在代码上面一行增加代码:

bind : function(obj1,obj2) {return function() {obj1.apply(obj2, arguments);} },

3、在以下模板文件中,找到嵌入global.js文件的代码,删除嵌入global.js

  1. brand.dwt  
  2. brand_list.dwt  
  3. category.dwt  
  4. exchange_list.dwt  
  5. search.dwt 

4、下载最新版的jquery库文件到模板目录中,如:

/js/jquery.1.5.2.js

如果你的模板中没有对应目录,则新建目录拷入jquery文件即可

5、修改文件:/themes/temlatename/library/page_header.lbi  在顶部加入代码: jQuery.noConflict();

注意,以后调用JQUERY对象用jQuery,不要用$,因为一个$与ECSHOP原有的函数同名有兼容问题。

6、修改完毕!放心使用你的JQUERY特效吧

Tags: Ecshop jQuery 冲突

分享到: