0

私はHeadjsを使用してJavaScriptファイルを並行してロードしています。頭にheadjsを追加して使用しhead.js("path/to/file/my.js");ましたが、Webページをロードするとスクリプトが表示されません。数回更新した後でのみ、スクリプト全体が正しく機能します。動作させるために更新する必要があるのはなぜですか?任意の提案をいただければ幸いです!

4

2 に答える 2

2

スクリプトは非同期で読み込まれるため、すぐに使用することはできません。ページを更新すると、キャッシュ内にスクリプトが見つかるため、スクリプトが必要になる場合があるコードに間に合うように読み込まれます。

readyスクリプトを必要とするすべてのコードにこのメソッドを使用します。

head.ready(function() {
  // any code that needs the script to be loaded first
});
于 2012-06-15T10:25:14.537 に答える
2

もう1つの方法は、ライブラリにマークを付け、スクリプトがロードされたときに準備完了イベントを取得することです。詳細については、http://headjs.com/ラベリングスクリプトを参照してください。

head.ready("your", function() {

});

head.js(
   {jquery: "http://http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"},
   {tools: "http://cnd.jquerytools.org/1.2.5/tiny/jquery.tools.min"},
   {your: "http://a.heavy.library/we/dont/want/to/wait/for.js"},

   // label is optional
   "http://can.be.mixed/with/unlabeled/files.js"
);
于 2012-06-15T10:29:40.020 に答える