0

だから私はui-tabsを使ってかなり素晴らしいアプリケーションを持っています..問題は、タブパネルが表示される前に私のajaxコンテンツに画像をプリロードする方法を私が一生理解できないことです。私が考えることができる唯一の方法は、タブパネルコンテンツをロードするための独自のajax機能を作成し、次のようなものをajax呼び出しに追加することです。

success: function(response){
    $(response).find('img').preload({
            onFinish: function(){
                    currentTabPanel.show();
            }
    });

}

しかし、jQueryUi.tabs()オブジェクトに組み込まれているAJAXメソッドとイベントを使用してこれを行うためのより良い方法があると思います。私はそれを見ていないと思います...arg。 。 何か案は??

4

2 に答える 2

0

応答とは何ですか?それは何を表していますか?

imgListと呼ばれる画像を表すオブジェクトのリストがあると仮定します。

var imagePreloader = new Image();

if(imgList.length != 0)
{
   imagePreloader.load(function() {
      if(imgList.length != 0)
      {
         var img = imglist.pop();
         imagePreloader.src = img.imgSrc;
      }
      else
      {
         currentTabPanel.show();
      }
   });

   imagePreloader.src = imgList.pop().imgSrc;   
}
于 2010-02-26T18:18:02.257 に答える
0

これは私が時々使用する汚い小さなスクリプトですが、うまく機能します:

var imgstopreload = new Array('file1.jpg', 'file2.jpg', 'etc.jpg');
for (x in imgstopreload){
    (new Image).src = imgstopreload[x];
}

多くの大きな画像では、画像が完了するまでページの読み込みが完了しないため、これは行いませんが、画像を準備する必要がある場合は機能します。インデックスに入れるだけです:)

于 2010-02-26T18:21:34.573 に答える