【发布时间】:2012-05-26 07:49:49
【问题描述】:
here 或 there 对此没有得到答复。这些问题措辞不佳,答案都是“使用 DOMReady”。
我想确保代码仅在页面加载完成后运行。我无法更改 HTML 文件本身,但如果可以的话,我会做一些类似这样的事情:
<!DOCTYPE html>
<html>
<head>
<script>window.loaded=false;</script>
</head>
<body onload="window.loaded=true;">
<!-- ... -->
</body>
</html>
然后在我的代码中:
if (window.loaded) { run(); }
else { document.addEventListener("load", run); }
而这正是我想要的。不幸的是,我无法修改 HTML,这意味着我正在寻找一种方法来确定文档是否已加载(如果 DOM 已准备好,不是)仅从 JS 代码.
我环顾四周,但到目前为止,我发现的一切都围绕着 DOMReady。真的没有人找过这个吗?
【问题讨论】:
-
总之,
DOMReady不在 HTML5 规范中的任何位置,它是一个术语,对于在 HTML5 规范完全开发之前实现它的不同人来说意味着不同的事物。
标签: javascript load