我见过很多 jquery/js $(function()...
1.
$(function() {
console.log('a');
})
2.
(function($) {
}(jQuery))
等等
我只是想为我选择一个,我应该选择哪一个?
我见过很多 jquery/js $(function()...
1.
$(function() {
console.log('a');
})
2.
(function($) {
}(jQuery))
等等
我只是想为我选择一个,我应该选择哪一个?
两者完全不同。
第一个是 dom 就绪事件处理程序,传递给的函数$
将在 dom 就绪事件上执行。这个问题是如果你用过jQuery.noConflict()
,$
可能不会参考jQuery
第二种是匿名函数执行,其中$
内部函数将引用 jQuery,这在您曾经jQuery.noConflict()
支持其他库(如原型/mootools)的情况下很有用。这种机制的一个缺点是您仍然需要在内部函数中使用 dom 就绪处理程序,例如
(function($) {
$(function(){
//your jQuery code
})
}(jQuery))
我的解决方案如下,因为它同时执行了上述两个步骤
jQuery(function($) {
console.log('a');
})