文档说你可以像这样使用$ .noConflict():
jQuery.noConflict();
(function($) {
$(function() {
// more code using $ as alias to jQuery
});
})(jQuery);
// other code using $ as an alias to the other library
它还声明调用它会返回jQuery对象的一个实例,所以我可以这样做:
jQuery.noConflict()(function(){
// code using jQuery
});
// other code using $ as an alias to the other library
但是,这种组合有效吗?
(function($) {
$(function() {
// more code using $ as alias to jQuery
});
})(jQuery.noConflict());
// other code using $ as an alias to the other library
如果是这样,有没有理由不这样做?而且(如果它有效),为什么不总是使用这个方法来保证我们的闭包内部,$ == jQuery?
答案 0 :(得分:5)
最后一个方法也可以 - jQuery.noConflict()
返回jQuery对象,该对象作为$
参数传递给函数。
我没有看到不这样做的理由,而是更喜欢其他方法。
答案 1 :(得分:5)
我不明白为什么不是jQuery.noConflict
returns jQuery
对象,并且在调用函数之前对其进行了评估。