大佬教程收集整理的这篇文章主要介绍了JavaScript – 导航定时API. domContentLoadedEventStart和domContentLoadedEventEnd之间发生了什么?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
您可以在这里看到的列表:http://www.w3.org/TR/navigation-timing/#process
了解哪一个过程涉及哪些事件在大多数情况下相当简单.但是,有一件事情,我不知道domContentLoadedEventStart和domContentLoadedEventEnd之间发生了什么.
这是我迄今为止所了解的,并且基于我的思考:
> domLoading // UA开始解析文档.
> domInteractive // UA已经完成解析文档.用户
可以与页面进行交互.
> domContentLoaded //该文档已经完全加载
解析和延迟脚本(如果有)已执行. (异步脚本,
如果有的话,可能或可能不会执行???)
> domComplete // DOM树是完全构建的.异步脚本,如果
任何,已执行.
> loadEventEnd // UA有一个完整的页面.所有资源,
像图像,swf等已经加载.
应该能够通过理解触发的事件#4(domCompletE)但是没有触发先前的事件来推断出第3阶段(domContentLoaded)之后发生了什么.
所以人们会认为“Async脚本(如果有的话)已经执行”意味着异步脚本在阶段#3之后但事件#4之前被执行.但是根据我的测试,这不是发生了,除非我的测试是错误的. (我试图复制我在JSFiddle上的测试,但是我不能使得所谓的/异步脚本工作,因为没有办法在外部脚本添加属性.)
所以我的问题是:domContentLoadedEventStart和domContentLoadedEventEnd之间发生什么过程?
例如,添加DOMContentLoaded事件并运行其中的一些代码,应该给您一个不同的开始和结束.
document.addEventListener("DOMContentLoaded",function(event) { var j = 0; for (var i = 0; i < 10000000; i++) { j = i; } });
一旦该事件运行,导航定时API将在开始和结束时间之间返回不同的时间戳,具体取决于事件运行多长时间.
从您指出的W3C文档中,我相信这些时间没有其他的进程.
以上是大佬教程为你收集整理的JavaScript – 导航定时API. domContentLoadedEventStart和domContentLoadedEventEnd之间发生了什么?全部内容,希望文章能够帮你解决JavaScript – 导航定时API. domContentLoadedEventStart和domContentLoadedEventEnd之间发生了什么?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。