// alternative to DOMContentLoaded
document.onreadystatechange = function () {
if (document.readyState == "interactive") {
initApplication();
}
}
DOMContentLoaded
DOM文档加载的步骤为
- 解析HTML结构。
- 加载外部脚本和样式表文件。
- 解析并执行脚本代码。
- DOM树构建完成。//DOMContentLoaded
- 加载图片等外部文件。
- 页面加载完毕。//load
DOMContentLoaded 事件将被触发,当初始HTML文档已经完成加载和解析时,而无需等待样式表,图像和子帧的完全加载。应该使用非常不同的事件load
来检测满载页面。 在使用 DOMContentLoaded 更加合适的地方, 使用 load
是一个非常流行的错误, 所以要谨慎。
// 不兼容老的浏览器,兼容写法见[jQuery中ready与load事件](http://www.imooc.com/code/3253),或用jQuery document.addEventListener("DOMContentLoaded", function() { // ...代码... }, false); window.addEventListener("load", function() { // ...代码... }, false);
用jQuery这么写
// DOMContentLoaded $(document).ready(function() { // ...代码... }); //load $(document).load(function() { // ...代码... });
具体的 参考: https://developer.mozilla.org/zh-CN/docs/Web/Events/DOMContentLoaded