我有一个关于 $(document).ready(); 的问题 jquery中的函数。它有什么作用。这些代码有什么区别;
1.
$(document).ready(function(){
alert("hello");
});
和这个
2.
$(document).ready((function(){
alert("hello");
})();
);
第一个代码定义了匿名函数,但它在哪里调用该函数。至少,第二个函数正在调用匿名函数。请向我解释这个查询。提前谢谢。
我有一个关于 $(document).ready(); 的问题 jquery中的函数。它有什么作用。这些代码有什么区别;
1.
$(document).ready(function(){
alert("hello");
});
和这个
2.
$(document).ready((function(){
alert("hello");
})();
);
第一个代码定义了匿名函数,但它在哪里调用该函数。至少,第二个函数正在调用匿名函数。请向我解释这个查询。提前谢谢。
第一种情况
的解释 第一种情况是一个匿名函数,当 DOM 等准备好并完成时将调用它。它可以按您的预期工作。
如果您不知道它的作用,那么我将在这里简要解释一下:
它的作用是给 ready 函数,一个函数作为参数,它告诉 ready 方法,当 DOM(意思是页面)加载并准备好时调用该方法。
var myReadyFunction = function(){ // Define the method to be called when
alert("hello"); // the DOMis ready
};
$(document).ready(myReadyFunction); // Tell the ready function, to execute
//this function when the DOM is ready
第二种情况的解释第二种情况
,一定是开发者搞错了,它是一个“立即函数”,意思是解析器看到就立即执行。功能:
(function(){
alert("hello");
})();
- 将立即提醒字符串hello
并且方法将返回undefined
。将其插入到 ready 方法中:
意思是,它所做的只是喊“你好”,然后变成这条线。
$(document).ready(undefined);
没有区别。$(document).ready()
当您的文档准备好加载时由 jQuery 自动调用(触发一个事件,然后处理该事件)。它执行您传递给就绪调用的匿名函数。您在第二个示例中所做的唯一一件事就是再次传递它并执行它。
$(document).ready()
将回调函数绑定到事件。一旦document
对象的ready
事件触发,回调函数将被执行。您传递给的参数ready
是您希望用作该事件绑定的回调的函数。
第一个函数在文档就绪时调用。$(document).ready
,还有一个文件加载功能。当文档准备好(css + js)时调用ready函数。加载所有内容时调用加载函数,包括图像。
您指出的第二个功能永远不会以这种方式使用。它是匿名函数和文档就绪的组合。在您的函数中,直接调用匿名函数并将结果传递给文档就绪函数。如果你这样使用它,你应该像这样使用它:
$(document).ready((function(){
alert("hello");
}) // No open / close brackets and no ;
);
更多信息: