$(function(){}) 与 (function($){})(jQuery) 的异同

其实从原理上来说,一个是 jQuery 的方法,一个是 js 的方法,两者没有什么联系,但鉴于有人会搞不清,特地解释一下。

$(function(){
    // your code
});

的完整写法是:

$(docunemt).ready(function(){
    // your code
});

意思是在 DOM 加载完毕后执行 ready() 里面的匿名方法。

(function($){
    // your code
})(jQuery);

等同于下面的写法:

var fun = function(params){
    // your code
};

fun(jQuery);

也就是定义了一个匿名函数,然后立即执行,并向这个函数中传递了参数 jQuery。

其实并没有什么联系。。。