jQuery NewBie问题:与$(文件)有什么关系。(准备好了)?

时间:2010-04-14 15:11:59

标签: javascript jquery

我是jQuery的新手,只是在最近几天尝试学习它。在我的办公室里,很少有经验的JavaScript开发人员,他们主要与jQuery一起工作以满足他们的所有需求,每当我和他们交谈以便更好地理解jQuery如何工作时,他们首先说的是在$(document).(ready)上执行此操作并在$(document).(ready)上执行此操作。

所以我的主要问题是什么是$(document).(ready)以及它是如何运作的?

任何输入都将受到高度赞赏。

更新:在接受的答案评论中提及当DOM准备就绪时,那么这究竟意味着什么?

6 个答案:

答案 0 :(得分:9)

一旦DOM完全加载并准备好进行操作,

$(document).ready()就会触发。这可以防止您的代码在它将作用的对象存在之前触发。 $(document).ready()是它最详细的版本,可以替换为任何这些语句......

$(document).ready(handler)
$().ready(handler) (this is not recommended)
$(handler)
$(document).bind("ready", handler)

有关文档,请参阅here

答案 1 :(得分:3)

我认为最好在tutorial

中进行描述
  

在文档就绪上启动代码

     

大多数Javascript程序员最终做的第一件事就是在他们的程序中添加一些代码,类似于:

window.onload = function(){ alert("welcome"); }
     

其中包含您希望在加载页面时运行的代码。 但问题是,在所有图片下载完之前,Javascript代码才会运行(这包括横幅广告)。首先使用window.onload的原因是,当您第一次尝试运行代码时,HTML“文档”尚未完成加载。

     

为了避免这两个问题,jQuery有一个简单的语句来检查文档并等待它准备好被操作,称为就绪事件:

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

或者简而言之,它保证文档的每个元素都被加载,以便您可以访问它,但它不会等到图像被加载。

答案 2 :(得分:1)

加载页面的所有元素后,将调用

$(document)。(ready)。这使您可以放心地设置事件处理程序之类的东西,因为您知道所有元素都存在。

答案 3 :(得分:1)

文档就绪是指当整个HTML文档及其所有元素都已加载时,由jQuery / JavaScript 触发的事件,并准备好进行操作。

浏览器加载元素的方式是在下载页面时呈现它们。如果您有一些过早运行的脚本,那么您可能会遇到该脚本失败的风险。

因此,您使用Document Ready确保它仅在整个页面准备就绪时运行。

这是一个例子......一旦整个文档在浏览器中加载完毕,这将打印“你好”:

$(document).ready(function(){ 
   alert('hello');
});

答案 4 :(得分:1)

DOM表示文档对象模型。您可以阅读更多相关信息here。所以

(文档)$。就绪()

一旦DOM被浏览器完全加载,就会触发

。因为浏览器上执行了Javascript,我们只想在浏览器知道我们希望脚本在其上执行的页面上的每个元素时开始执行

答案 5 :(得分:0)

就像window.onload事件一样

除了它等待所有二进制数据这样的图像完成加载

如果你想使用dom,这是至关重要的,因为你需要你的代码访问dom元素,而且存在剂量