JavaScript中DOMContentLoaded事件应用案例如何详细解析?
- 内容介绍
- 文章标签
- 相关推荐
本文共计408个文字,预计阅读时间需要2分钟。
`DOMContentLoaded` 事件与文档加载相关,当文档加载并解析完成后触发。它类似于 `window.onload` 事件,但存在细微差别:`DOMContentLoaded` 在文档加载和解析完成后立即触发,而 `window.onload` 等待样式表、图片和子框架等完全加载后触发。
DOMContentLoaded 事件
字面上看,它会在dom加载完成后触发。
与window.onload事件非常相似,但有一定区别:
- DOMContentLoaded 事件是在文档完全加载和解析之后触发;
- window.onload 事件不但文档完全加载和解析完毕,相关资源都要加载完毕,比如图片和CSS文件等;
下一个问题是什么时候dom加载完毕,这得从浏览器渲染说起,浏览器显示网页的过程可以做如下描述:
1. 请求得到html文档,根据文档请求更多的img,css及其它资源文件;
2. 解析文档得到两个东西,dom tree and cssom tree;
3. 依据上面两个tree生成render tree;
4. 根据render tree进行布局并在其中绘制相关元素。
以webkit为例,它的渲染流程如下:
DOMContentLoaded事件触发时机:
在DOM后,RENDERtree之前。
JavaScript加载和执行会迟滞DOMContentLoaded 事件的触发。
本文共计408个文字,预计阅读时间需要2分钟。
`DOMContentLoaded` 事件与文档加载相关,当文档加载并解析完成后触发。它类似于 `window.onload` 事件,但存在细微差别:`DOMContentLoaded` 在文档加载和解析完成后立即触发,而 `window.onload` 等待样式表、图片和子框架等完全加载后触发。
DOMContentLoaded 事件
字面上看,它会在dom加载完成后触发。
与window.onload事件非常相似,但有一定区别:
- DOMContentLoaded 事件是在文档完全加载和解析之后触发;
- window.onload 事件不但文档完全加载和解析完毕,相关资源都要加载完毕,比如图片和CSS文件等;
下一个问题是什么时候dom加载完毕,这得从浏览器渲染说起,浏览器显示网页的过程可以做如下描述:
1. 请求得到html文档,根据文档请求更多的img,css及其它资源文件;
2. 解析文档得到两个东西,dom tree and cssom tree;
3. 依据上面两个tree生成render tree;
4. 根据render tree进行布局并在其中绘制相关元素。
以webkit为例,它的渲染流程如下:
DOMContentLoaded事件触发时机:
在DOM后,RENDERtree之前。
JavaScript加载和执行会迟滞DOMContentLoaded 事件的触发。

