是否可以将jquery源代码中的名称“jQuery”更改为其他内容。
我想用这个新名称执行我的jQuery操作
例如:
jQuery('#something').attr();
来
myName('#something').attr();
我该怎么做?
答案 0 :(得分:7)
var myName = jQuery.noConflict(true);
这会将$
和jQuery
恢复为之前的值(可能是undefined
),并将jQuery对象分配给myName
。
但是,考虑在$
指向jQuery对象的闭包中使用jQuery包装代码:
(function($) {
$('#something').something();
})(jQuery.noConflict(true));
使用您的代码的人希望使用$
,并且如果他们必须使用其他内容,则很可能会感到烦恼;特别是如果它更长一点!
如果您不需要要移除$
和jQuery
,请不要使用jQuery.noConflict(true)
,只需在我{I}处写jQuery
使用jQuery.noConflict(true)
。
还要记住,如果在加载全局jQuery
之前没有jQuery插件可以正常工作(如果它们已经正确写入,那么在它们加载后这样做就好了,即我建议给你的闭包)
答案 1 :(得分:1)
var $j = jQuery.noConflict();
// Use jQuery via $j(...)
$j(document).ready(function(){
$j("div").hide();
});