ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript bootstrap_javascript のヒント

JavaScript bootstrap_javascript のヒント

WBOY
WBOYオリジナル
2016-05-16 18:59:161415ブラウズ

1. Web ページの読み込み中、ページ コード内の js ファイル参照 (以下を参照) によってサーバーへの http リクエストが生成されます。これは、body.onload イベントの前に読み込まれたファイル (ここでは静的に読み込まれたファイルと呼びます) がサーバーへの http リクエストを生成します。サーバーの http リクエストを減らすために、各ページには最大でも 1 つの js ファイル参照のみを含めることを推奨します。

2. body.onload イベントの後にファイルをロードします (ここでは呼び出します)ファイルを動的にロードする場合、ブラウザはまずキャッシュ ファイルを検索し、キャッシュ ファイルが存在しない場合はサーバーに http リクエストを作成します。そのため、私はファイルの動的ロードと静的ロードを推奨します。 body.onload イベントの前のファイルは正確である必要があります。
3. このシステム プログラムは機能モジュールごとに単一のファイルに分割されており、すべてのスクリプト プログラム コードを一度にダウンロードするのではなく、実行時にオンデマンドで /source/js/system.js にダウンロードされるため、ネットワーク帯域幅の使用量が削減されます。 。
4. Web サイト間で JS コードを呼び出す際のエンコードの問題を防ぐため、プログラム内のすべての中国語文字は関数エスケープでエンコードされます。単一の Web サイトでのみ使用される場合は、エンコードを中国語文字に戻すことができます。 。
5. 「この Web サイト専用」としてマークされているすべての関数またはクラスは、この Web サイトのバックグラウンドでカスタマイズされたデータ型に関連している可能性があります。

以下は /js/Load.js プログラムとコメントです:

コードをコピーコードは次のとおりです:

var IsBody={};

//js プログラム ファイルを動的にロードするコードを定義します
eval("IsBody.AppendJs=" (IsBody. AppendJsCode=" function(){var A=(typeof(arguments[0])=='string'?arguments:arguments[0]);for(var i=A.length-1;i>=0;i- -){ var J=document.createElement('script');J. language='javascript';J.type='text/Javascript';J.src=A[i];document.getElementsByTagName('head') [0] .appendChild(J);}};"));

//document.body がロードされているかどうかをテスト
IsBody.Try=function()
{
if (document.body&& ((this.IsIE=(document.readyState!=null))?document.readyState.toLowerCase()=='complete':true))
{ // document.body がロードされた後、決定ブラウザが IE であっても FoxFire であっても、このプログラムは現在これら 2 つのブラウザをサポートしています。ファイルは、サーバーの http リクエストの数を減らすことも目的としています (ここでの LoadCssFile は配列であることに注意してください)
var C=LoadCssFile,j=C.length,i=1;
while(i{
var J=document.createElement ('link');J.rel='stylesheet';J.type='text/css';J.href=C[i ];document.getElementsByTagName('head ')[0].appendChild(J);
}
}
//画像の動的ロード、目的はサーバーの http リクエストを減らすことです
if(typeof(LoadImage)!= '未定義') this.AppendJs('/source/js/LoadImage .js');
//動的ローダー本体システム
this.AppendJs('/source/js/System.js'); >}
};
IsBody.Interval= setInterval('IsBody.Try();',100);

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。