这个JQuery代码意味着什么以及它什么时候被调用?

时间:2012-05-24 21:21:29

标签: javascript jquery html

我是JQuery的新手,我在网页上看到了一段代码:

$(function() {
     //do something...
});

我不懂这里的语法。 它定义了一个函数吗? 什么时候会被召唤? 我可以重复使用吗?

由于

4 个答案:

答案 0 :(得分:4)

这是jQuerys DOM就绪处理程序的简短版本。当DOMReady事件被触发时,函数内部的代码将在页面加载时被调用。

这相当于下面的一些更详细,但更清晰:

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

答案 1 :(得分:2)

一旦文档对象模型(DOM)准备好(页面加载),就会调用该函数。

这是简写:

$(document).ready(function() { 
  // Commands here
});

在页面加载后,您可以将所有要加载的函数/脚本放在其中。

答案 2 :(得分:1)

它是DOM加载后触发的ready()事件的包装。

$(document).ready(function() {

});

这是在DOM加载时触发的事件(但不包括图像)。

另一种选择是

$(window).load(function() {

});

当所有内容都已加载(包括图像)时会触发

答案 3 :(得分:1)

这是使jQuery工作所需要用的主要内容。在文档完全加载(不包括图像)之后,该函数将发生。里面的任何东西,或者这个(你粘贴的代码是以下的简写):

$(document).ready(function() {
  // anything inside this will happen only after the document has fully loaded
});

如果您只是将代码放在脚本标记中,如下所示:

<script type="text/javascript">
  $('div').css('background-color','green'); // sets all <div> CSS background to green
</script>

它只适用于这些标签之前的div(如果你把它放在<head>中,那么根本不起作用)。如果你把它放在$(function() { });$(document).ready(function() { });(你喜欢什么,我更喜欢第二个选项)那么它将适用于DOM完全加载后存在于DOM中的所有div个元素(只是实际的HTML,而不是图像加载后)。

是的,你可以在页面上多次使用它。

此处有更多信息:Tutorials: Introducing $(document).ready()