假设我正在运行一个没有冲突的 jQuery 版本,如下所示:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script><script type="text/javascript">var jQuery191 = $.noConflict(true);</script>
我有一个外部 .js 文件,应该使用无冲突版本 jQuery191
运行,并在脚本底部包含 (jQuery)
的 jQuery 对象.
如果我将 .js 文件包含在 getScript()
中,并使用无冲突的 jQuery 对象运行它:
(function (jQuery) {
$.getScript("js.js");
})(window.jQuery191)
该脚本是使用 jQuery191
还是原始 jQuery
运行?或者这个逻辑只是愚蠢的。
最佳答案
getScript
只会加载脚本并将其添加到页面,它根本不会影响脚本的行为。如果脚本通过全局名称访问 jQuery,那么它将找不到它(由于调用了 noConflict
),并且将无法正确运行。
如果可以的话,我建议在调用 noConflict
之前添加脚本,否则您必须修改脚本以在您放置的位置查找 jQuery它(jQuery191
)。
关于jquery - getscript 可以在 jquery noconflict 中运行导入的脚本吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15304450/