这有不是已被回答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,这意味着我正在寻找一种方法来确定文档是否仅从JS代码加载(而不是)。
我环顾了很多地方,但到目前为止,我发现的所有东西都围绕着DOMReady展开。没有人真的找过这个吗?
总之'DOMReady'并不是HTML5规范中的任何地方,它是一个术语,意味着不同的人在HTML5规范完全开发之前实现它。 – Gareth