document.ready 和 $function 之间的差异

IT技术 javascript jquery jquery-plugins document-ready
2021-03-22 03:19:10

可能的重复:
这些 jQuery 就绪函数之间有什么区别?
jquery:选择一个 document.ready 方法

这样做有什么区别

$(function() {
    $("a").click(function(event){
        alert("Thanks for visiting!");
    });
});

还有这个

$(document).ready(function(){
    $("a").click(function(event){
        alert("Thanks for visiting!");
    });
});
3个回答

他们是一样的。查看 jQuery.ready()文档这是文档中的引用:

以下所有三种语法都是等效的:

$(document).ready(handler)

$().ready(handler)(不推荐这样做)

$(处理程序)

哈哈。永远给我惊喜。对正确答案和文档中的引用投反对票:)
2021-05-02 03:19:10

您的示例之间的功能没有区别 - 它们都绑定到 DOM 就绪。

作为参考,您可以在两个点绑定 jQuery 代码。

第一个将在 DOM 准备好时执行(两者是等效的):

$(document).ready(function() {
    // code
});
$(function() {
    // code
});

第二个将在页面加载完所有图像、样式表等后执行。

$(window).on("load", function() {
   // code
});

当您需要获取图像width()or时,第二个很有用height()这些属性仅在映像完全下载到客户端系统后才可用。

另请注意,$(window).load(fn);现在已弃用,不应再使用。

当然,除了绑定之外,重要的是要记住初始化代码有时不需要绑定到任何事件。根据Dave Ward 的这篇文章有些可以在阅读后立即运行
2021-05-04 03:19:10

以下所有三种语法都是等效的:

$(document).ready(handler) 
$().ready(handler) (this is not recommended) 
$(handler) 

http://api.jquery.com/ready/

如果它们是等效的,为什么不推荐?
2021-05-19 03:19:10
为清楚起见,截至目前,文档表示$(handler)建议$(function(){});使用该函数,即通常与该函数体中的代码一起使用
2021-05-21 03:19:10