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 回答