Yahoo は、パフォーマンス上の理由から、HTML ページの下部にスクリプトをロードすることを提案しています。ルールを尊重する HTML5 ボイラープレートを使用します。
このアプローチの問題点は、jQuery も下部にロードされることです。何らかの理由で jQuery コードを含むインライン JavaScript を記述する必要がある場合$
は、名前空間でまだ使用できないため、できません。
これは、たとえば、次のマークアップを必要とする gallery.js (jQuery 画像ギャラリー エンジン) で発生します。
<div id="gallery">
<img src="/media/img1.png" />
<img src="/media/img2.png" />
</div>
<script>
$('#gallery').css('height', '200px'); // this is required for galleria to work
Galleria.run('#gallery');
</script>
jQuery は後でロードされるため、高さを設定するコードは#gallery
機能しません。Firebug コンソールは次のようになります。
ReferenceError: $ is not defined
名前空間でシンボルが見つかる<script>
まで、ブロックの実行を後押しするためのヒントはありますか?$