Javascript以异步方式从服务器加载图像

时间:2010-07-22 10:13:04

标签: javascript jquery

我想将图像从我的服务器加载到图库。问题是,在加载网页后,我的程序首先加载所有图像,然后同时显示所有图像。因此,他们需要加载。

我想在加载时一次显示一个图像,在尚未加载的图像上显示“忙”指示。

这是我的代码:

controller.labelForIndex = function (index) { 
    var arrayIndexNO=(index%(temp.length/2))*2;
    var appID=temp[arrayIndexNO];
    var iconImage=appID+".png";

    $(".ad-carousel-view .cells > li").css("background-image", "url("+iconImage+")");

    return temp[arrayIndexNO+1];
};

此函数被调用10次以加载10个png并将其显示在单元格中,但我的代码首先加载所有图像,然后同时显示所有图像。

1 个答案:

答案 0 :(得分:1)

How to load images with jquery ajax? (From jQuery mailing list)

  

您无法使用AJAX加载图像,只需创建一个新的图像对象即可   追加,然后图像可以异步加载。试试这个简单的jQuery   插件:

$.fn.image = function(src, f){
    return this.each(function(){ 
        var i = new Image();
        i.src = "">        i.>        this.appendChild(i);
    });
}
  

然后调用此插件,如:

$("#container").image(" http://jquery.com/images/hat2.gif",function(){
  alert("The image is loaded now");
});