Javascript 与YAHOO.util.Event.OnContentry做相同事情的惯用Dojo?

Javascript 与YAHOO.util.Event.OnContentry做相同事情的惯用Dojo?,javascript,dojo,yui,Javascript,Dojo,Yui,我希望在DOM元素可用时立即开始操作它,以尽量减少它在屏幕上以原始状态出现的时间。我知道在YUI中您会使用,我很确定您会在jQuery中使用。我是新来的Dojo,我不确定:“Dojo方式”是什么 更新:我特别不想等待整个页面(数据量高得离谱;标记本身就可能有MB或更多)加载。我希望立即开始在DOM中查找元素,并在元素出现后立即开始处理,而不必等待所有标记下载、解析并插入DOM,这可能需要相对较长的时间。我想开始研究DOM,并在这个小片段出现后立即开始工作。考虑到这一限制,dojo.ready不是

我希望在DOM元素可用时立即开始操作它,以尽量减少它在屏幕上以原始状态出现的时间。我知道在YUI中您会使用,我很确定您会在jQuery中使用。我是新来的Dojo,我不确定:“Dojo方式”是什么

更新:我特别不想等待整个页面(数据量高得离谱;标记本身就可能有MB或更多)加载。我希望立即开始在DOM中查找元素,并在元素出现后立即开始处理,而不必等待所有标记下载、解析并插入DOM,这可能需要相对较长的时间。我想开始研究DOM,并在这个小片段出现后立即开始工作。考虑到这一限制,dojo.ready不是很适合吗?我的理解是,它等待整个DOM就绪,类似于。

。还有一个较新的别名dojo.ready

注意:加载项除了等待DOM可读性之外,还等待确保加载所有必需的模块。

dojo.addOnLoad()
就是您想要的。看


请注意,
dojo.ready()
适用于该方法。

在将一段DOM添加到树中后,注入功能的最精确方法是将需要它的直接放在标记中的下面。与OnContentTready相比,它似乎不那么吸引人,但OnContentTready只是一种轮询机制,它可能会在相关DOM子树准备好编写脚本很久之后,与domready同时执行回调

浏览器可以非常快速地组装DOM树。使用OnContentTready这样的轮询解决方案,必须每隔几毫秒执行一次搜索目标元素的代码,从而降低了页面组装/呈现的速度

我会坚持将s放在代码的底部,或者如果必须的话,将must run now damnit代码放在所需标记后面的a中

我不熟悉dojo的API,因此如果上面的内容没有帮助,我无法回答您关于dojo的具体问题


(经过编辑以转义前导的作为说明,我相信您希望在jQuery()
$(document.bind('ready',function(){/*body here*/})中使用
ready()
$(document).ready(function(){/*body here*/})ready()
是否等待加载DOM?我只是很早就关心(可能很重)页面中的一个元素。我已经更新了这个问题以澄清(我希望如此)。missingno有你的答案。谢谢,但我不认为我是清楚的。
ready()
是否等待加载DOM?我只是很早就关心(可能很重)页面中的一个元素。为了清楚起见,我已经更新了这个问题(我希望如此)。是的,dojo.ready会在DOM能够被操作(以及所有必需的javascript模块都被加载)时立即启动,正如文档所述:“调用指定函数时,图像和CSS文件可能已经下载完毕,也可能尚未下载完毕”感谢迄今为止的帮助
addOnLoad
要求下载完整的HTML,对吗?我就是这样看文件的。就我而言,这是完全不能接受的。页面不可缓存,其大小取决于用户输入。我个人看到它在标记、无图像、css等方面超过3MB。虽然这本身就是一个问题,但修复它现在还不在范围之内。我需要一个匹配给定选择器的元素(在本例中可以是
ID
)出现在DOM中时立即触发的东西,DOM是否已完全构建并不重要。这对我来说是有意义的,但正如我所说:我对Dojo是新手,我想确保我所做的事情符合经验丰富的Dojo用户的期望。我完全可以把它放在相关标记之后。