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