注文

2011-10-20 10 views
0

可能性の重複:私たちは、HTMLページのヘッダーにスクリプトタグの数を持っている場合は、それが必要
Javascript Load Order注文

ですそれらは連続した形でレンダリングされるか、またはそれらは任意の順序で並べ替えることができます。具体的には、HTMLの頭の部分にスクリプトタグがあり、それらは.jsファイルの読み込み専用です。スクリプトタグが先に来ると、それは早くレンダリングされ、現在のファイルがロードされるまで他の.jsファイルはロードされません。また、同じ名前を持つ2つの関数がある場合、関数の1つをスクリプトタグ(インライン)に置くことによって、この重複する名前関数の呼び出しが行われたときにこの関数だけが呼び出されるようにします。

おかげで、 ジャック

async属性が設定されていない限り、HTML文書内の
+0

JavaScriptファイルとコードは、定義された順序でロード/実行されます。後の関数定義は既存の関数定義を上書きします。 –

答えて

1

<script>タグが順次実行されています。これは、document.writeの呼び出しを介して、HTML文書を変更することができます(たとえば、元のHTML文書の次のスクリプトの前にロードして実行する必要のあるスクリプトを追加するなど)。

document.writeではなく、DOM(またはDOMを使用するライブラリ)を使用しないでください。スクリプトをドキュメントの下部に配置する必要があります。後者の変数代入(関数定義を含むJavaScriptでは)は前者を上書きしますが、名前が衝突しないように関数に別の接頭辞を使用することや、以下のような専用変数を使用することをお勧めします。

function f() { 
    console.log("do one thing"); 
} 

(function() { 
    function f() { 
    console.log("do another thing"); 
    } 
    f(); // prints "another" 
})(); 

// The "another" function is not visible here. 
0

ロードJavaスクリプトの順序は、ローカルスクリプトの後にロードされます任意のクロスドメインスクリプトを使用する場合は、単にそれ以外の場合は、HTMLの前にスクリプトを配置する

てみてください(同じドメイン内のスクリプトを移動)を順次

ですスクリプトは変数

を上書きします