Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否仅为一个JS文件启用JQuery?_Javascript_Jquery - Fatal编程技术网

Javascript 是否仅为一个JS文件启用JQuery?

Javascript 是否仅为一个JS文件启用JQuery?,javascript,jquery,Javascript,Jquery,我正在为一个已经在自己的Javascript代码中使用了$symbol的网站编写一个插件。我希望我的插件使用JQuery,但我无法更改它们的代码以添加JQuery.noConflict(),因此在我的插件加载主站点的所有代码后,主站点开始崩溃 有没有办法只为一个Javascript文件启用JQuery? 或者是否有一个版本的.noConflict()可以跨网页的所有Javascript文件工作 我开始考虑一些非常奇怪的解决方案(比如一个包装器JS函数,它添加JQuery,然后运行您想要的函数,然

我正在为一个已经在自己的Javascript代码中使用了$symbol的网站编写一个插件。我希望我的插件使用JQuery,但我无法更改它们的代码以添加JQuery.noConflict(),因此在我的插件加载主站点的所有代码后,主站点开始崩溃

有没有办法只为一个Javascript文件启用JQuery? 或者是否有一个版本的.noConflict()可以跨网页的所有Javascript文件工作

我开始考虑一些非常奇怪的解决方案(比如一个包装器JS函数,它添加JQuery,然后运行您想要的函数,然后删除JQuery),所以如果有人能在我做一些我会后悔的事情之前指出我错过的事情,我将不胜感激


编辑:我测试得越多,就越有可能发生其他事情。noConflict()似乎正在工作,因为我能够确保我的脚本是之后第一个运行的脚本。

我建议您研究捆绑模块并动态加载它们的可能性。webpack、systemjs、gulp和grunt等工具可能对您的用例有所帮助。如果没有这些工具,我不知道如何实现您想要做的事情。

您可以使用
jQuery
而不是
$
。除非我误解了你的问题。你不需要编辑他们的代码来使用noConflict。到底是什么阻止您使用
jQuery
代替
$
?难道你不能改变脚本的顺序,让
jQuery.noConflict()
早些时候调用吗?我认为,这不是你的问题。构建你的插件,指定它需要jquery出现在页面上,就这样。让所述网站的开发人员将其包括在内,并使用无冲突。将jquery直接包含在插件中比不假设它适用于多个特定网站更可能导致问题。@AlGoreRhythm我可以在自己的代码中使用jquery,但这并不妨碍他们的代码仍然使用$。