如何解决Shopex4.8.5中关于 Mootools和jQuery 的冲突问题?

Share on:

ShopEx4.8.5系统用了很多客户端JS特效,特别是后台的管理界面,为了给用户更好的软件体验,更是大量加入了Javascript脚本实现界面和Ajax操作。

ShopEx的Js脚本都扩展于Mootools脚本库,mootools和jquery一样是属于比较轻巧的Js库,是做前端开发必不可少的脚本库,两者功能相近,开源协议也一样都可以使用 MIT license,Jquery的插件库更丰富一点,在国内使用Jquery的网站也多于mootools,要找些现成的JS脚本制作ShopEx插件应该是更容易,那为什么ShopEx的设计者当初选用了Mootools作为前端脚本库而不是Jquery。ShopEx系统研究认为这可能是设计者的技术偏好,因为mootools更符合所谓的编程模式,让开发人员更容易去定义扩展一个类,代码的类结构更合理清晰,写一个类所需的代码量更少,所以决定选用mootools也合情合理,因为开发人员的出发点永远是写最少的代码在最多的地方使用,达到代码重用的目的。

不过这增加了普通模板设计师以及第三方服务商基于ShopEx系统定制做模板和插件的难度,因为Jquery更直接简单,国内可找到的资源多,论坛上也有用户提到一个办法可以解决在ShopEx系统中使用Jquery冲突的办法,虽然比较麻烦不利于升级,有急需安装某个Jquery效果的也可以一试:

解决Shopex中关于 Mootools和jQuery 的冲突问题的方法

在你的模板目录/block/header.html 里面的标签前添加以下代码

jQuery.noConflict();

然后是替换选择器,把使用jquery里面的所有$都替换为jQuery。

闽ICP备12003472号-7