为了账号安全,请及时绑定邮箱和手机立即绑定

DOMContentLoaded事件

标签:
JavaScript
介绍

DOMContentLoaded事件在HTML文档完全加载并解析后触发,不等样式表、图片、子帧(subframes)完成加载。

document.addEventListener('DOMContentLoaded', function () {
    console.log('DOM完全加载并解析了');
})

DOMContentLoaded属于HTML5规范,IE9不支持这个事件。

同步JavaScript代码会阻塞DOM解析,自然会影响DOMContentLoaded的触发时机。

document.addEventListener('DOMContentLoaded', function () {
    console.log('DOM完全加载并解析了');
})

for (var i = 100000000; i >= 0; i--) {
    // 这个同步脚本会延迟DOM解析时间,
    // 因此DOMContentLoaded事件会在稍晚些触发
}
一个广为流传的错误——使用load事件

有一个广为流传的错误是使用load事件表示在页面加载完成后执行某个函数,像这样:

window.onload =  function () {
    console.log('网页完全加载了');
}
// 或者
window.addEventListener('load', function () {
    console.log('网页完全加载了');
});

除非真是有这样的需求——等待页面的样式表、图片、子帧(subframes)都加载完毕,否则没必要使用load事件,相反使用DOMContentLoaded更合适些。

参考链接:DOMContentLoaded - Event reference MDN

(完)

点击查看更多内容
2人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
数据库工程师
手记
粉丝
24
获赞与收藏
286

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消