在我的 head.phtml 中,我有以下声明来获取菜单。
<script src="<?php echo $this->getJsUrl(); ?>lib/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="<?php echo $this->getJsUrl(); ?>jQuery_1205141001.js" type="text/javascript"></script>
<script src="<?php echo $this->getJsUrl(); ?>Common_1205141001.js" type="text/javascript"></script>
<script src="<?php echo $this->getJsUrl(); ?>lib/jquery.jcarousel.min.js" type="text/javascript"></script>
现在,我可以使菜单正常工作,但由于这个原因,细节页面上的添加到购物车按钮被破坏了。如果我删除了上述引用,则会恢复添加到购物车按钮。我查看了有关prototype.js和jquery之间冲突的各种问题,并尝试了以下内容
jQuery.noConflict();
,但它没有用。它也打破了菜单jQuery.noConflict();
。这也没有帮助。请告诉我如何使两件事都有效。您可以访问此LINK进行实时测试。在这里,您将看到菜单正常工作但添加到购物车已损坏。
注意: - 它与在jquery调试器中显示的Superfish.js和其他错误无关。
答案 0 :(得分:4)
<script src="<?php echo $this->getJsUrl(); ?>lib/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="<?php echo $this->getJsUrl(); ?>jQuery_1205141001.js" type="text/javascript"></script>
<script src="<?php echo $this->getJsUrl(); ?>Common_1205141001.js" type="text/javascript"></script>
<script src="<?php echo $this->getJsUrl(); ?>lib/jquery.jcarousel.min.js" type="text/javascript"></script>
<script type="text/javascript">
$.noConflict(); //Use no conflict here instead of js file
// Code that uses other library's $ can follow here.
</script>
有关详细信息,请访问链接。
http://api.jquery.com/jQuery.noConflict/
答案 1 :(得分:1)
我似乎记得必须按此顺序调用不同的.js文件/代码才能使其正常工作。
你有这个去过吗?
这似乎是其他几个问题的答案:
答案 2 :(得分:1)
如果您正在提供文件,请向jquery添加两个换行符,然后
jQuery.noConflict();
答案 3 :(得分:0)
这个有效:
$.noConflict();
jQuery(document).ready(function($) {});
答案 4 :(得分:0)
我尝试了“没有冲突”的方法,但它对我没用。
最后,我不需要它。
以下是我在修补2小时后解决问题的方法:
确保您尝试引入的冲突javascript文件是要调用的最后一个javascript:/app/design/frontend/YOURTHEME/YOURCHILDTHEME/template/page/html/head.phtml。
就我而言,我试图介绍的麻烦文件是:'jquery-1.4.2.min.js'
我预感到这可能与默认脚本冲突:'jquery-1.7.1.min.js'