知道图像何时从服务器加载完毕

时间:2012-08-28 15:44:21

标签: xml ajax jquery

是否有任何类型的oncomplete方法可以知道何时从服务器上完全加载图像?

我有一个XML Feed,我用它来获取图片网址,然后在我创建的图库中显示它们。图像以各种不同的尺寸进入,我正在尝试调整它们以适应特定的宽高比。我无法调整它们的大小,因为我没有宽度和高度。

以下是我通过Jquery提取Feed的方法:

$.get('feed/test.xml', function(data){
        $(data).find('item').each(function(){  
            var obj = $(this);
            var image = obj.find('ImageURL').text();  //  http://testimageurl.com

            var str = ' <li>';
            str += '        <img src="'+ image +'" />';
            str += '    </li>';

            $("#slider").append(str);
        });

         // Code for resizing images goes here
    });

我需要能够在加载完成后从网址获取图片大小。

对任何人都有意义吗?

1 个答案:

答案 0 :(得分:2)

您正在寻找load(如果图片已被缓存,则为complete)事件:

尝试更改

$("#slider").append(str);

$(str).find('img')
   .one('load complete', function() {
       /* do something onload or complete event */
   })
   .end()
   .appendTo($("#slider"));