Javascript:在document.onload之前访问DOM

spr*_*aff 1 html javascript dom

我有一个页面,document.body.onload=function(){...}但由于该文档还包含外部<img>标签等,因此会出现延迟; onload似乎只有在这些外部网站提供某种响应后才被解雇.

我把代码放进去是onload因为我认为DOM树在那之前还没有完全可用(例如,如果过早调用,document.getElementById(x)可能会返回null).

是否有一个事件在DOM中的所有内容都可访问后触发,但在所有内容都被加载之前触发?

Jam*_*gne 5

您可以将<script>标记放在正文的末尾,因为html是按顺序解析的.

另外,你可以查看jquerydocument.ready.即使您不想使用jquery,也可以查看它们如何处理它. ready完全符合您的要求.