HTML <script> defer 属性
defer 属性是一个 boolean 属性,用于设置当页面已完成加载后,才会执行脚本
defer 属性仅适用于外部脚本 ( 只有在使用 src 属性时 )
有多种执行外部脚本的方法
-
如果 async="async"
脚本相对于页面的其余部分异步地执行(当页面继续进行解析时,脚本将被执行)
-
如果不使用 async 且 defer="defer"
脚本将在页面完成解析时执行
-
如果既不使用 async 也不使用 defer
在浏览器继续解析页面之前,立即读取并执行脚本
语法
<script defer></script>
浏览器支持
所有主流浏览器都支持 defer 属性
范例
页面已加载后才会运行脚本
<script src="/static/media/html/demo_defer.js" defer></script>
HTML 与 XHTML 之间的差异
在 XHTML 中,禁止属性最小化,defer 属性必须定义为
<script defer="defer"></script>