现有jQuery插件之后的jQuery noConflict

时间:2017-01-23 22:45:07

标签: jquery

我正在使用Magento制作的网站,我需要添加自己的jQuery。问题是,该网站已经包含一个使用自己版本的jQuery(1.6.2)的插件(ig lightbox2)。

所以我将jQuery 1.11和我的脚本文件添加到页脚并将其设置为:

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

//Script Here

}); //End of No Conflict

然而,这会导致Lightbox插件的某些部分停止处理错误:

jQuery.easing[jQuery.easing.def] is not a function.

有没有办法在不影响插件的情况下添加我的jQuery 1.11?

编辑: 我已经将插件设置更改为不使用缓动而且它避免了问题,我可以将脚本保留在页脚中。但是为了将来的参考,如果我将我的脚本放在首位,我将如何让它们正常工作?

这是我正在解决的预装js的一个例子:

<script type="text/javascript" src="http://www.example.com.au/skin/js/prototype/prototype.js,/js/lib/ccard.js,/js/prototype/validation.js,/js/scriptaculous/builder.js,/js/scriptaculous/effects.js,/js/scriptaculous/dragdrop.js,/js/scriptaculous/controls.js,/js/scriptaculous/slider.js,/js/varien/js.js,/js/varien/form.js,/js/varien/menu.js,/js/mage/translate.js,/js/mage/cookies.js,/js/varien/product.js,/js/varien/configurable.js,/js/calendar/calendar.js,/js/calendar/calendar-setup.js,/js/esl/jquery-1.8.3.min.js,/js/esl/no_conflict.js,/skin/frontend/default/default/esl/custom_option_variations/js/select_variation.js,/skin/frontend/base/default/ig_lightbox2/js/jquery-1.6.2.min.js,/skin/frontend/base/default/ig_lightbox2/lightbox/js/jquery.lightbox-0.5.pack.js" ></script>

1 个答案:

答案 0 :(得分:0)

如果我没记错的话,你应该首先加载noConflict版本。因此,在您的情况下,在1.6.2和灯箱脚本之前,使用noConflict脚本将1.11放入标题中。我认为这应该有效。