現在、レイアウトと多くのビューを備えた大きな CakePHP アプリケーションがあります。レイアウトでは、ほとんどのビューで必要な Javascript ファイルを head にロードします。ビュー自体で、追加の Javascript ファイルをロードする (たとえば、そこでのみ必要なライブラリ ファイルをロードする) か、このビューにのみ関連する Javascript コードをスクリプト タグに追加します (たとえば、クリックが必要な場合)。ハンドラ。
HTML のヘッドブロックに Javascript ファイルをロードするとページのロードがブロックされることは既知の事実なので、body タグを閉じる前にそれらを下部に配置したいと考えました。しかし、そうすると、コンテンツをロードするビューの Javascript が壊れてしまいます。ファイルが読み込まれる前に、読み込まれたビューの Javascript コードが実行されることを理解しています。しかし、どうすればそれを防ぐことができますか?
現在、レイアウト (および他のすべての場所) で HTML ヘルパーを使用して、次のように JS ファイルをロードしています。
<?php echo $this->Html->script('//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'); ?>
そして、JS Helper を使用して、ページの最後に JS を「出力」します。
<?php echo $this->Js->writeBuffer(); ?>
writeBuffer を呼び出したときに実行されるように、ビューに JS コードを追加する方法はありますか? それは私を助けることができますか?