我需要加载一个包含完整的jQuery 3.2.1库的外部应用程序。因为它是一个外部托管的应用程序,修改代码是不现实的。但是,当我将脚本添加到我的页面时,由于与已加载的其他脚本冲突,我最终会遇到很多错误。作为一个实验,我已经尝试下载应用程序并将内容包装在一个匿名函数中,认为这将使新版本的jQuery在应用程序中保持本地作用,但它没有任何区别。
是否有一种简单的方法来包含此应用,而无需修改内容或依赖jQuery.noConflict()
,这需要对现有代码进行许多更改?
答案 0 :(得分:2)
你可以在你的代码中使用jQuery.noConflict()进行有限的更改,只需在IIFE中包含所有使用jQuery的代码并传入你正在使用的jQuery实例
尝试类似
的内容<script src="path-to-your-jquery.js"></script>
<script>var $jQ = jQuery.noConflict();</script>
<script>/* your plugins */</script>
<script>
(function($){
/* your code using `$` works fine here*/
})($jQ);
</script>
<script> /* other app code */</script>