jquery $(function()... styles,它们的区别是什么

时间:2013-09-22 09:37:26

标签: jquery

我见过很多jquery / js $(function()...

1

$(function() {
      console.log('a'); 
})

2

(function($) {

}(jQuery))

等等

我只想为我选择一个,我应该选择哪一个?

1 个答案:

答案 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'); 
})