我已将Magento电子商务网站纳入我们现有的网站,一切正常,但在此过程中会使用各种不同的jQuerys和原型。
我想改进网站的移动导航,找到了很棒的jQuery.mmenu插件。我已将它集成到网站中,它看起来很有效,但网站的magento部分中有某些页面的菜单会破坏它们的菜单,因此菜单不再存在。
查看工作页面和非工作页面的代码我发现他们使用的js存在一些差异,但我无法弄清楚如何纠正这个问题:
工作页面:http://www.doble-shop.co.uk/shop/boots.html
非工作页面:http://www.doble-shop.co.uk/shop/richa-monza-waterproof-leather-boots-black.html(请注意,菜单不会显示在网站的移动大小上,并且js标签会被打破,因为下拉快速访问,也是错误消息未捕获的TypeError:无法读取属性'未定义的阻止程序显示在控制台中)
在比较两个页面的代码并注意使用的js时,以下内容包含在损坏的页面上,但不包括在工作页面上:
<script type="text/javascript" src="http://www.doble-shop.co.uk/shop/js/varien/product.js"></script>
<script type="text/javascript" src="http://www.doble-shop.co.uk/shop/js/varien/configurable.js"></script>
<script type="text/javascript" src="http://www.doble-shop.co.uk/shop/js/calendar/calendar.js"></script>
<script type="text/javascript" src="http://www.doble-shop.co.uk/shop/js/calendar/calendar-setup.js"></script>
<script type="text/javascript" src="http://www.doble-shop.co.uk/shop/js/infortis/jquery/plugins/jquery.cloudzoom.min.js"></script>
<script type="text/javascript" src="http://www.doble-shop.co.uk/shop/js/infortis/jquery/plugins/jquery.colorbox.min.js"></script>
答案 0 :(得分:0)
许多JavaScript库使用$
作为函数或变量名,就像jQuery一样。在jQuery的情况下,$
只是jQuery
的别名,因此所有功能都可以在不使用$
的情况下使用。如果您需要在jQuery旁边使用另一个JavaScript库,请通过调用$
将$.noConflict()
的控制权返还给另一个库。在jQuery初始化期间保存$
的旧引用; noConflict()
只是简单地恢复它们。
如果出于某种原因加载两个版本的jQuery(不推荐),从第二个版本调用$.noConflict( true );
将返回全局范围的jQuery变量到第一个版本的变量
<script>
var $ = jQuery.noConflict();
</script>
在您的网页中包含jQuery后立即放置此代码段。 阅读更多here。