我在我的网站上使用jQuery。但是,鉴于Chrome插件可能会在全局范围($)中导入自己的jQuery版本,如何阻止他们的jQuery(来自客户端浏览器上的插件)覆盖我的jQuery(最初加载网站的那个)以及建立在其上的扩展功能。)
答案 0 :(得分:0)
使用Jquery jQuery.noConflict()
<script src="other_lib.js"></script>
<script src="jquery.js"></script>
<script>
$.noConflict();
jQuery( document ).ready(function( $ ) {
// Code that uses jQuery's $ can follow here.
});
// Code that uses other library's $ can follow here.
</script>
答案 1 :(得分:0)
使用以下内容。 jQuery.noConflict()解决这些问题。
<script src="jquery.js"></script>
<script>
var $j = jQuery.noConflict();
// Code that uses other library's $ can follow here.
</script>
<script src="other_lib.js"></script>
<script>
$j(document).ready(function(){
//your code
})
</script>
然后使用您可以在需要使用jQuery引用的位置使用$j
而不是jQuery
或$
。如果页面上需要多个版本的jQuery,则可以使用相同的内容。只需使用不同的变量。
答案 2 :(得分:0)
建议查看jQuery.noConflict,你给$ / jQuery一个不同的引用 - https://api.jquery.com/jquery.noconflict/
var j = jQuery.noConflict();
j( "div p" ).hide();
// Do something with another library's $()
$( "content" ).style.display = "none";