3

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

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

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

谢谢

4

4 回答 4

4

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

它等同于以下内容,它更冗长但更清晰:

$(document).ready(function() {
    // code here
});
于 2012-05-24T21:22:06.380 回答
2

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

它是以下的简写:

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

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

于 2012-05-24T21:22:59.423 回答
1

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

$(document).ready(function() {

});

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

另一种选择是

$(window).load(function() {

});

加载所有内容(包括图像)时触发

于 2012-05-24T21:25:23.287 回答
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() { });(无论您喜欢什么,我更喜欢第二个选项),那么它将div在完全加载后对 DOM 中存在的所有元素起作用(只是实际的 HTML,而不是在图像加载后)。

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

更多信息:教程:介绍 $(document).ready()

于 2012-05-24T21:30:28.777 回答