博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DOMContentLoaded事件
阅读量:4132 次
发布时间:2019-05-25

本文共 1068 字,大约阅读时间需要 3 分钟。

本文转自:和

DOMContentLoaded事件是从HTML中的onLoad的延伸而来的,当一个页面完成加载时,初始化脚本的方法是使用load事件,但这个类函数的缺点是仅在所有资源都完全加载后才被触发,这有时会导致比较严重的延迟,开发人员随后创建了一种自定义事件,domready,它在DOM加载之后及资源加载之前被触发。

domready事件在本地浏览器中以DOMContentLoaded的形式被使用;此外,它目前已在HTML5中被标准化,下面的代码显示了DOMContentLoaded是如何在document对象中被触发的;
  document.addeventListener('DOMContentLoaded',function(){...},false);

window的load事件会在页面中的一切都加载完毕时触发,但这个过程可能会因为要加载外部资源过多而颇费周折。而DOMContentLoaded事件则在形成完整的DOM树之后就会触发,不理会图像、JavaScript文件、CSS文件或其他资源是否已经下载完毕。与load事件不同,DOMContentLoaded支持在页面下载的早期添加事件处理程序,这也就意味着用户能够尽早地与页面进行交互。

要处理DOMContentLoaded事件,可以为document或window添加相应的事件处理程序(尽管这个事件会冒泡到window,但它的目标实际上是document)。来看下面的例子:

var EventUtil = {    addHandler: function (element, type, handler) {        if (element.addEventListener) {            element.addEventListener(type, handler, false);        } else if (element.attachEvent) {            element.attachEvent("on" + type, handler);        } else {            element["on" + type] = handler;        }    }};EventUtil.addHandler(document, "DOMContentLoaded", function (event) {    alert("Content loaded.");});

转载地址:http://ybjvi.baihongyu.com/

你可能感兴趣的文章
Redis最新面试题26题(初级、中级Redis面试题)
查看>>
排序算法系列:快速排序算法JAVA版(靠谱、清晰、真实、可用、不罗嗦版)
查看>>
排序算法系列:选择排序算法JAVA版(靠谱、清晰、真实、可用、不罗嗦版)
查看>>
【转】 简单的3个SQL视图搞定所有SqlServer数据库字典
查看>>
WF从入门到精通(第八章):调用外部方法及工作流 (转)
查看>>
WPF中两种设计模式操作XML转实体类
查看>>
如何编写Silverlight动画效果控件
查看>>
Silverlight Forms Builder表单设计器: FreeForm 简介
查看>>
企业IM (或业务系统)web api的json格式设计思考(原创)
查看>>
Jira API传字符串的换行问题 (文本编辑器使用)
查看>>
读/写锁的实现和应用(高并发状态下的map实现)
查看>>
JIRA Rest JAVA Client API实现问题管理及自定义字段(原创)
查看>>
使用泛型SwingWorker与EDT事件分发线程保持通讯
查看>>
WebSocket集成XMPP网页即时通讯1:Java Web Project服务端/客户端Jetty9开发初探
查看>>
编写线程安全的Java缓存读写机制 (原创)
查看>>
优化openfire服务器提升xmpp 效率的15个方法(原创)
查看>>
JAVA线程本地变量ThreadLocal和私有变量的区别
查看>>
Liferay开发实战(2):Service Builder生成持久化层,及开发服务层
查看>>
(原创)定时线程池中scheduleWithFixedDelay和scheduleAtFixedRate的区别
查看>>
Java异步执行多个HTTP请求的例子(需要apache http类库)
查看>>