0

現在 head.js を使用して、私の Web サイトの js ファイルの読み込みを遅らせています。私のプロジェクトでカラーボックスを使用しています。問題は、カラーボックスが完全にロードされないことがあります (ダイアログではなく新しいページでカラーボックスが開きます) が、何度か更新すると最終的にロードされます。

カラーボックス js ファイルが head.js によって完全に読み込まれる前であっても、カラーボックス ダイアログを開くためのページ コンテンツが読み込まれる可能性があると思います。これが本当の原因でしょうか?

リフレッシュする必要なく、毎回カラーボックスを正しく表示したいと思います。

head.js がすべての依存ファイルの読み込みを完了した後にのみ、カラーボックス ページ コードを実行するようにするにはどうすればよいですか?

ありがとう。ニック

4

2 に答える 2

0

カラーボックスのhtmlコードをdivに入れます。

<div id="colorBoxDiv" style="display:none;">
</div>

head.jsの最後の行に、次のコードを追加します。

$("#colorBoxDiv").html($("#colorBoxDiv").html()).show();
于 2012-06-27T07:32:58.730 に答える
0

head.js には、それを行うためのさまざまなオプションがたくさんありました。必要なファイルがロードされたときにコールバック関数を実行するか、test機能 API 呼び出しを使用できます。例えば:

// queue scripts and fire a callback when loading is finished
head.load("file1.js", "file2.js", function() {
    // do something
 });

// same as above, but pass files in as an Array
head.load(["file1.js", "file2.js"], function() {
    // do something
});

// you can also give scripts a name (label)
head.load({ label1: "file1.js" }, { label2: "file2.js" }, function() {
    // do something
});

// same as above, but pass files in as an Array
head.load([{ label1: "file1.js" }, { label2: "file2.js" }], function() {
    // do something
});                   

// Labels are usually used in conjuntion with: head.ready()
head.ready("label1", function() {
    // do something
});

 // Actually if no label is supplied, internally the filename is used for the label
 head.ready("file1.js", function() {
    // do something
});

ドキュメントの詳細

于 2016-01-13T12:06:49.237 に答える