2017-05-20 4 views
1

次のシナリオを検討してください:すべてのスクリプトタグをダウンロードした後にDOMContentLoadedが起動しますか?

<!DOCTYPE html> 
<html lang="en"> 

<head> 
    <meta charset="UTF-8"> 
    <title>Document</title> 
</head> 

<body> 
    <script src="js/heavy_js_file.js" defer></script> 
    <script src="js/heavy_js_file2.js" defer></script> 
    <script> 
    document.addEventListener("DOMContentLoaded", function(event) { 
     console.log("DOM fully loaded and parsed"); 
    }); 
    </script> 
</body> 

</html> 

DOMContentLoaded火災、すべての外部延期のスクリプトをダウンロードして実行した後?

P.S:MDN definitionは、html DOMを解析した後に解雇されます。DOMContentLoaded私はHTML DOMを解析することはjsファイルをダウンロードして実行することを意味するのかどうかはわかりません。

答えて

1

はい、スクリプトが非同期でない限り、スクリプトの解析後にDOMContentLoadedが発生します。

編集私は重複として質問をマークする方法を知らないが、私はanwserはすでにここにあるかなり確信している:Defer attribute and onload event

関連する問題