美文网首页
script 属性 defer 、async

script 属性 defer 、async

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

    都只能用于外部脚本

    defer:

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

    async:

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

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

    相关文章

      网友评论

          本文标题:script 属性 defer 、async

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