HTML <script> defer 属性
定義と使用方法
defer
属性はボルン属性です。
設定されている場合: defer
属性が設定されている場合、スクリプトはページの解析と並行してダウンロードされ、ページの解析が完了した後に実行されます。
注意:defer
属性は外部スクリプトにのみ適用されます(存在する場合に限ります)。 src 属性 この場合にのみ使用してください)。
注意:外部スクリプトを実行するには、さまざまな方法があります:
- async が設定されている場合:スクリプトはページの解析と並行してダウンロードされ、利用可能になったときにすぐに実行されます(解析が完了する前に)。
- defer が設定されて async が設定されていない場合:スクリプトはページの解析と並行してダウンロードされ、ページの解析が完了した後に実行されます。
- async または defer が設定されていない場合:スクリプトはすぐにダウンロードされ実行され、ページの解析をブロックし、スクリプトの実行完了まで待ちます。
语法
<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 |