1

DouglasCrockfordsの「TheoryoftheDOM 」を見ていますが、スクリプトタグの場所が、アプリケーションの読み込み時間に大きく影響する可能性があると彼は言いました。さらに、彼は、スクリプトタグをドキュメント本文のできるだけ下に含める必要があると主張しています。

これは正確ですか?

また

このビデオは古くなっていますか?(彼がDOMについてもっと早く講義しなかった理由として、彼は実際にそれを見つけました)。

4

5 に答える 5

2

GoogleはCrockfordに同意します:

Yahoo! 同じように:

そして他のSOユーザーも同様に同意します:

于 2010-12-14T18:12:25.317 に答える
1

ヘッダーに含まれるファイルは、ページの残りの部分がロードを開始する前にロードされます。不要なファイルは、ページの下部にできるだけ近づけてロードすることをお勧めします。これにより、ページの残りの部分を事前にロードできるようになります。

代わりにヘッダーにロードできるJSライブラリ(LABjsなど)がいくつかあります。次に、他のすべてのJSアセットを非同期でロードし、コールバックを提供できるため、JSアセットがロードされたことがわかっているときに残りのコードを実行できます。

于 2010-12-14T18:09:48.087 に答える
1

http://labjs.com/を使用することもできます。

プロジェクトのページに記載されているように:

LABjs(JavaScriptの読み込みとブロック)は、Getify Solutionsによってサポートされているオープンソース(MITライセンス)プロジェクトです。LABjsの主な目的は、任意の場所から任意のページに、いつでも任意のJavaScriptリソースをロードできる、汎用のオンデマンドJavaScriptローダーになることです。LABjsを使用してスクリプトをロードすると、ページのロード中のリソースブロッキングが減少します。これは、サイトのパフォーマンスを最適化するための簡単で効果的な方法です。

LABjsはデフォルトで、ブラウザが許可する速度ですべてのスクリプトを並行してロード(および実行)します。ただし、実行順序に依存するスクリプトを簡単に指定でき、LABjsによって適切な実行順序が保証されます。これにより、LABjsは、制御/ホストするかどうか、スタンドアロンであるかリソースのより大きな依存関係ツリーの一部であるかに関係なく、事実上すべてのJavaScriptリソースで安全に使用できます。

LABjsを使用すると、その醜い「タグスープ」がすべて置き換えられます。これは、HTMLページのまたは末尾に一般的に表示されるすべてのタグです。APIは表現力豊かで連鎖的であり、ロードするスクリプトと、必要に応じて実行を待機(「ブロック」)してから実行を続行するタイミングを指定できます。APIを使用すると、インラインコード実行カップリングも簡単に実行できます(インラインタグを考えてみてください)。

LABjsは現在、Steve Soudersとのコラボレーションの恩恵を受ける特権を持っており、利用可能な最適化された、柔軟な、一般的なスクリプトのロードのための単一の最良のソリューションになることを目指しています。

于 2010-12-14T18:11:04.973 に答える
0

まあ、それは正しいです。javascriptファイルを並行してロードする「head.js」のようなものを使用しない限り。ああ、そして、いくつかのスクリプトはコンテンツの前になければなりません。たとえば、html5-shivスクリプト。

http://headjs.com/

于 2010-12-14T18:06:59.663 に答える
0

DOMが確実に読み込まれるようにするには、ページの最後にJavaScriptを含める必要があると聞いています。しばらく前にYahooのドキュメントでこれを読んだと思います。

于 2010-12-14T18:09:24.340 に答える