美文网首页
script 属性 defer 、async

script 属性 defer 、async

作者: 西木木亢 | 来源:发表于2017-07-26 13:19 被阅读0次

都只能用于外部脚本

defer:

  • 告诉浏览器立即下载,但延迟执行。script元素包含的脚本延迟到浏览器遇到</html>标签后再执行。
  • HTML5规范要求按照出现的先后顺序执行。
  • 会先于DOMContentLoaded事件执行。但在现实当中,延迟脚本并不一定按照顺序执行,也不一定会在DOMContentLoaded事件触发前执行,因此最好只包含一个延迟脚本。

async:

  • 告诉浏览器立即下载文件,不保证按先后顺序执行。
  • 指定async的目的是不让页面等待脚本下载和执行,从而异步加载其他内容。
  • 所以,异步脚本不要在加载期间修改DOM。异步脚本一定会在页面load事件前执行,但可能会在DOMContentLoaded事件触发之前或之后执行。

参考:《JavaScript高级程序设计(第三版)》

相关文章

  • 第二章html中使用JavaScript

    没有 defer 或 async,浏览...

  • JavaScript高程读书笔记(1)

    一、script标签 async属性(只是适用于外部脚本文件)立即下载脚本,但不妨碍页面其他操作 defer属性(...

  • 浏览器script标签加载顺序

    script标签(不带defer或async属性)的会阻止文档渲染。相关脚本会立即下载并执行。 document....

  • 前端面试题集每日一练Day3

    问题先导 script标签中defer和async属性的区别?【html】 单行/多行文本溢出可以怎么处理?【cs...

网友评论

      本文标题:script 属性 defer 、async

      本文链接:https://www.haomeiwen.com/subject/vognkxtx.html