为什么在jQuery中使用document.ready

时间:2015-06-10 10:10:50

标签: javascript jquery

jQuery中$(document).ready()的确切用法是什么?我们可以在网页中有两个$(document).ready()吗?

4 个答案:

答案 0 :(得分:4)

在文档“准备就绪”之前,无法安全地操作页面。通常人们会在文档的开头写<script>个标签,<head>甚至在编写<body>之前。因此,从技术上讲,如果您正在操纵<body>内容中的内容,则执行时不存在

因此,jQuery的$( document ).ready()等待HTML文档内容完全加载并准备就绪,在将所有元素呈现到window对象之后,或简而言之,完成对主体的加载。

然后,一旦HTML文档被完全加载,代码中出现的任何内容都会被执行,这样可以确保在执行JS代码时每个HTML元素都存在。

退房:

关于绑定两个现成的处理程序,为什么需要两个?您可以在单个函数中组合代码。您必须提供最小代码来解释。我假设你有类似的东西:

$( document ).ready( function () {
    // Code block 1 start...
    alert( "First Function..." );
    // Code block 1 end...
});

$( document ).ready( function () {
    // Code block 2 start...
    alert( "Second Function..." );
    // Code block 2 end...
});

是的,以上是可能的。此外,与上述内容没有区别:

$( document ).ready( function () {
    // Code block 1 start...
    alert( "First Function..." );
    // Code block 1 end...

    // Code block 2 start...
    alert( "Second Function..." );
    // Code block 2 end...
});

答案 1 :(得分:2)

加载DOM后和加载页面内容之前,$(document).ready()函数内的所有内容都会加载。

您应该使用此函数包装所有javascript代码,以确保代码仅在页面完全呈现时运行。 如果没有它,您可能会遇到错误,因为JavaScript无法找到元素,因为它们还没有呈现给页面。

是的,你可以在网页上任意多次使用它。

答案 2 :(得分:0)

$(document).ready([...])仅在HTML文档完全加载时用于执行JS代码,这样可以确保在执行JS代码时填充每个HTML元素。

您可以多次使用它。

答案 3 :(得分:0)

  

在Jquery中使用Document.ready

有时您需要在页面加载时运行脚本。但是在执行脚本时可能会有一些未完全加载的元素。为确保安全运行,我们使用$(document).ready(function { /* to do here */})或简写$(function { /* to do here */});

  

我们可以在网页上有两个document.ready吗

是的,你可以拥有多个。