jQuery页面加载

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (77)

我看到人们在jQuery中使用了所有这些不同的技术。我知道第二技术会在页面加载上运行。但是第一和第三的功能什么时候才能启动呢?第三种技术是在插件中使用,以避免冲突,对吗?我还添加了第四技术。我想知道你什么时候应该/不应该使用每种技术。

第一

(function($) {

})(jQuery);

第二

$(document).ready(function(){

});

第三

$(function(){

}());

第四

jQuery(function($) { 

}); 

第五

(function(){

})();
提问于
用户回答回答于

首先是避免与可能分配的其他库冲突$。它不是一个ready处理程序。第二和第三个是ready事件处理程序。

jQuery API参考

以下所有三种语法都是相同的:

  • $(文件)。就绪(句柄)
  • $()。ready(处理程序)(不推荐)
  • $(交易)

所以虽然这三个人做同样的事情,但避免第二个。

在jQuery 1.3中,$()等于$(document)

第四个看起来像一个语法错误给我。它基本上分配了一个新的就绪处理程序,但它传递了一个带有参数的函数$。由于这是一个事件处理函数,jQuery将在第一个参数中传递事件信息。能通常不想$表示事件信息。

第五个定义了一个新函数,然后立即调用它,不传递任何参数。所以这:

(function(){
    alert("Hi!");
})();

意思就是这样:

alert("Hi!");
用户回答回答于

1st - 将$分配给jQuery以便仅在括号内使用(没有冲突版本)2nd是正常版本,3rd是简写:)

速记是:

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

(在函数()括号后面没有括号)

更长的时间阅读我自己的链接后,看起来,第一个可能只包装部分代码,其中$符号分配给jQuery,但你仍然必须使用$(document).ready()

第五类:检查其他答案,我不知道这种类型。

jQuery(function($){

});

扫码关注云+社区

领取腾讯云代金券