客户瑞javaScript时间线

1.Web游览器创建Document对象,并开始解析Web页面,解析HTML元素和它们的文本内容后添加Element对象和Text节点到文档中,在这个阶段document.readystate属性值是loading
2.当HTML解析器遇到没有async和defer属性的<script>元素时,它把这些元素添加到文档中,然后执行行内或外部脚本,这些脚本会同步执行,并且在肚本下载和执行时解析器会斩停滞不前这样脚本就可以用document.write()来把文本插入输入流中,解析器恢复时这些文本会成为文档的一部分,同步脚本经常简单定义函数和注册后面使用的注册事件处理程序,但它们可以遍历和操作文档树,因为在它们执行时已经存在了,这样,同步脚本可以看到它自己的<script>元素和它们之前的文档内容
3.当解析器到设置了async属性的<script>元素时,它开始下载脚本文本,并继续解析文档,脚本会在它下载完成后尽快执行,但是解析器没有停下来等它下载,异步脚本禁使用document.write()它们可以看到自己的<script>元素和它之前的所有文档元,并且可能不能访问其它的文档内容
4当文档完成解析,cocument.readyState属性变成"interactive".
5所有defer属性的脚本,会按它们在文档的里的出现顺序执行.异步脚本可能也会在这个时间执行.延迟脚本能访问完整的文档树,禁止使用document.write()方法
6.浏览器在Document对象上解发DOMContentLoaded事件,这标志着程序执行从同步脚本执行阶段转换到了异步事件驱动阶段.但要注意.这时可能还有异步脚本没有执行完程
7这时,在文档已经完全解析完程,但浏览器可能还在等待其他内容载入,如图片,当所有这些内容完成载入时,并且所异步脚完成载入执行.document.readyState属性改变压为complete Web浏览器解发Window对象上的load事件
8从此刻起,会调用异步事件,以异步响应用户输入事件,网络事件,计时器过期等
所有浏览器都没有支持它的全部细节
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值