Magento jQuery conflict



在我的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>

现在,我能够让菜单工作,但因此详细信息页面上的"添加到购物车"按钮已损坏。如果我删除上述引用,则会恢复"添加到购物车"按钮。我查看了有关原型.js和jquery之间冲突的各种问题,并尝试了以下事情

  1. 首先,我尝试在jquery-1.4.2.min.js末尾添加jQuery.noConflict();,但没有奏效。它还打破了菜单
  2. 其次,我尝试在查询文件的开头添加jQuery.noConflict();,jQuery_1205141001.js和Common_1205141001.js。这也无济于事。

请告诉我如何让这两件事都正常工作。您可以访问此链接进行现场测试。在这里,您将看到菜单正常工作,但添加到购物车已损坏。

注意:- 它与Superfish无关.js以及jquery调试器中显示的其他错误。

<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/

我似乎记得必须按此顺序调用不同的.js文件/代码才能使其正常工作。

  1. jquery.js
  2. 无冲突呼叫
  3. 原型.js

你试过了吗?

这似乎是其他几个问题的答案:

奇怪的Chrome原型/jQuery冲突

Magento 使用 jquery with noconflict

如果您正在提供文件,请向 jquery 添加两个换行符,然后

jQuery.noConflict();

这个工作:

$.noConflict();
jQuery(document).ready(function($) {});

我尝试了"无冲突"方法,但它对我不起作用。

最后,我不需要它。

以下是我在修补 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"

最新更新