我测试了一些东西,这真的很奇怪......
当我使用时:
jQuery(document).ready(function ($){
console.log($('.box').length);
});
返回值为4;
如果我使用它:
(function ($){
console.log($('.box').length);
})(jQuery);
返回值为0;
(在同一份文件中)
对此有何解释?
(我试图在jsfiddle中重现,但两者都返回相同的值。)
答案 0 :(得分:1)
第二个示例将导致在解析整个语句时运行函数中的代码。 jQuery版本一直等到DOM被完全解析和填充。换句话说,这两段代码完全不同。