0

処理の順序とDOMの処理方法に関する簡単な質問です。

私の理解では、タグの直前にすべてのJQueryスクリプトを含めることがベストプラクティスです。私の状況では、ほとんどの体の要素を差し控えるdivコンテナがあります。これらの要素の中には、会社名と年が記載されている私のフッターがあります。現在、私のページはモジュール方式(header.php、page.php、footer.php)で設定されており、会社名と年をfooter.phpに含めたいと思います。これにより、会社名を簡単に編集できるようになります。 。私の問題は、jqueryスクリプトを本文の直前に保持する形式を維持したいということです。このレイアウトでは、div内にjqueryスクリプトを含めずに、footer.phpに会社名を含めることはできません。擬似コードの意味をお見せします。

現在の設定方法:

page.php

<body>
<div class="container">
  //body elements
<hr>
 <p>&copy; Company 2012</p>
</div>
<script>
  //some javascript #1
</script>
<script>
  //some javascript #2
</script>

footer.php:

<script> //same static javascript that doesn't change page to page </script>
</body>

設定方法(サイト全体で会社名を簡単に変更できます):

page.php

<body>
<div class="container">
  //body elements
<script>
  //some javascript #1
</script>
<script>
  //some javascript #2
</script>

footer.php:

<hr>
 <p>&copy; Company 2012</p>
</div>
<script> //same static javascript that doesn't change page to page </script>
</body>

この方法で実行できることはわかっていますが、jqueryスクリプトは技術的にはコンテナー内で実行されるため、最適化が失われるのではないかと心配しています。

以上のことをすべて踏まえて、ページのコンテナのdivを閉じる前にjqueryスクリプトを含めますが、divのすべてのコンテンツの後で、divを閉じた後よりも効率が低下しますか?

これらはすべてDOMの処理方法に完全に依存していることは理解していますが、DOMが処理されるかどうか、または実際に処理される前に終了タグが必要かどうかについての情報が見つからないようです。ターンすると、2番目の方法が遅くなります。

何か片付けられるかどうか教えてください。ありがとう

4

1 に答える 1

0

インラインスクリプトは、ページ全体のレンダリングをブロックします。(Operaのみがレンダリングを行います)したがって、ケースのどこに配置してもかまいません。一般に、外部ファイルは引き続きダウンロードでき、フラッシュが有効になっている場合は何かをレンダリングできるため、最後に配置することをお勧めします。

外部スクリプトは、その下にあるすべてのレンダリングのみをブロックします。

于 2012-06-03T23:22:45.637 に答える