Atribut defer HTML <script>

Definisi dan penggunaan

defer adalah atribut boolean.

Jika atribut defer Atribut, skrip akan diunduh secara paralel saat penguraian halaman dan dieksekusi setelah penguraian halaman selesai.

Perhatian:defer Atribut hanya berlaku untuk skrip eksternal (hanya ada Atribut src hanya seharusnya digunakan saat.

Perhatian:Skrip eksternal dapat dieksekusi melalui berbagai cara:

  • Jika async telah diatur: skrip akan diunduh secara paralel saat penguraian halaman dan dieksekusi segera saat tersedia (sebelum penguraian selesai)
  • Jika defer telah diatur (tetapi async belum): skrip akan diunduh secara paralel saat penguraian halaman dan dieksekusi setelah penguraian halaman selesai
  • Jika tiada async dan defer: skrip diunduh dan dieksekusi segera, menghalangi penguraian halaman hingga skrip selesai dieksekusi

实例

脚本将与页面解析并行下载,并在页面完成解析后执行:

<script src="demo_defer.js" defer></script>

亲自试一试

语法

<script defer>

推迟脚本的执行

您可以用 async 和 defer 属性对脚本的执行方式加以控制。defer 属性告诉浏览器要等页面载入和解析完毕之后才能执行脚本。

浏览器在遇到带有 defer 属性的 script 元素时,会将脚本的加载和执行推迟到 HTML 文档中的所有元素都已得到解析之后。

这与将 script 移到页面末尾的结果是一样的:

<body>
... ...
... ...
... ...
<script src="demo.js"></script>
</body>

浏览器支持

表中的数字注明了首个完全支持该属性的浏览器版本。

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
8.0 10.0 3.5 5.0 15.0