2011-01-30 7 views
0

私はすべてのjsファイルをHTMLの一番下に置きましたが、私がfirebug(firefoxで)を見ているとき、jsはhtmlドキュメントの直後に呼び出されます。なぜ私のブラウザはjsを最初に取得していますか?

すべてのソリューションはありますか?私はonLoadでjsの負荷を行うことができますが、まず問題を知りたいと思います。

おかげで、 クラウディウ

更新:私は

[html] 

[head] 

    //stuf with no js files included 

[/head] 

[body] 

    //content 

    [script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js" type="text/javascript"][/script] 

    [script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"][/script] 

    [script src="js/script.js" type="text/javascript"][/script] 

[/body] 

[/html] 

を持っていますが、(あなたが写真で見ることができるように - 放火犯 - ネット)はJavaScriptが最初にロードされ :

enter image description here

+0

JSの前に画像を読み込むことをお勧めしますか? –

+0

はい、jsは最後に読み込まなければなりません – Symba

答えて

3

ブラウザは、上から順に解析します下。ブラウザがすべてをあらかじめ解析しているので、DOMのロード時に、最後のbodyタグの前にHTMLドキュメントの最後にあるスクリプトが実行されます。

イベントハンドラをウィンドウのロードイベントにバインドする必要がある場合は、スクリプトで遅くして少し遅くして、window.onloadまたは、さらに好ましくはクロスブラウザイベントシステムを介して遅延させます。

準備が整う前にjavascriptを実行する必要がある場合は、先にスクリプトを<head>に移動して読み込みます。

質問が実際にはという混乱しているので、実際に明確にすることができれば幸いです。

EDIT:DOMを読み込んだ後にスクリプトを配置しています。画像はすべてその時点でロードされているわけではなく、ウィンドウのloadイベント中にのみ表示されます。あなたは、画像のロード後にこれらのスクリプトをロードする必要がない理由は本当にありません

...私はあなたが現時点でそうであるようにJS/jqueryのを使用してウェブサイトの99.99%が、同じロード順序を持っていることをguestimateう..

これが本当に必要な場合は、ウィンドウのloadイベントでスクリプト注入メソッドを使用してください。

関連する問題