這有不是已被回答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