ページのJavaScript初期化を少しオフロードする簡単な方法

おそらく、誰かがこの考えが役立つと思うでしょう。



大規模な複数ページのサイトがあります。 さまざまなページに、美しいギャラリー、ajaxリーフレットなど、複雑なjavascriptのさまざまなものがあります。 これはすべて、jQuery / Prototype / Mootools /などに基づいて展開されます。それぞれについて、一連の関数、IDやクラスの複雑なセレクターなどが呼び出されます。 など

そして、生産性を重視する開発者として、これらのスクリプトをすべて1つのJSファイルに慎重に入れてパックします。



しかし、厄介な点があります。各ページを開くと、スクリプトはDOMを使用し、上記の「すべて」に関係するすべてのノードを見つけて選択しようとします。 つまり スクリプトに$('.myclass')



getElementById



などのように何個のセレクターがあるかなど、DOMをロードした後何回も、これらの要素の検索でスキャンされます。



そして、1.5千行のスクリプトとそのようなセレクターがある場合、「9000を超える」でしょうか? これにより、ページの読み込みが遅くなります。 もちろん、損失はそれほど気にするほど大きくありませんが、非常に簡単かつ簡単に取り除くことができます:これらのアプリケーションの存在をチェックする際に、JSアプリケーションの動作を記述する機能セットをまとめます。



つまり、ページにアプリケーションがある場合、そのアプリケーションは<div id="my_app">...</div>



ます。

このような構造でこのアプリケーションの動作を記述するすべての機能をラップします。

  if(document.getElementById( 'my_app')){
	 //ここにコーディング			 
 } 


また、 id="my_app"



ページにノードがない場合、パーサーはパスし、アプリケーションに関して呼び出されたすべてをページ上で見つけようとしません。



些細なことだが、いい



All Articles