0

Google のページ速度は、JavaScript の解析を延期する必要があることを示しています。

ヘッダーに読み込まれた 2 つの外部 Javascript と、ドキュメントの下部にある初期化関数の呼び出しがあります。

Google の推奨事項に従えば、次のような関数を作成する必要があります。

function downloadJSAtOnload() {

  var element = document.createElement("script");
  element.src = "myscript1.js";
  document.body.appendChild(element);

  element = document.createElement("script");
  element.src = "myscript2.js";
  document.body.appendChild(element);

  myinitialization();

}

myinitialization()スクリプトが正常にロードされて解析される前に が呼び出されないことを 100% 確信できますか? 他に、解決策は何ですか?

4

2 に答える 2

1

通常は、ドキュメントの末尾 ('' タグの前) にスクリプト ファイルを含めるだけで十分です。

        ...
        <script src="myscript1.js"></script>
        <script src="myscript2.js"></script>
        <script>
            myinitialization();
        </script>
    </body>
</html>

これは、スクリプトのダウンロードが開始される前にドキュメントが読み込まれることを意味しますが、実行順序を保証することも意味します。

于 2013-07-01T19:57:47.587 に答える
0

Felix によると、答えはノーです。への呼び出しの前に追加されたコードが実行されるという事実に頼ることはできませんmyinitialization();

解決策は、コードを 1 つのファイルにラップして使用することasyncです。

于 2013-08-05T17:28:54.510 に答える