在Internet Explorer 8中使用jQuery加载图像事件失败

时间:2012-05-12 12:26:29

标签: jquery internet-explorer-8

我在为Internet Explorer 8中的弹出窗口加载图像时遇到了困难,我不知道它为什么会返回“图像无法加载”。一直以来。

我首先认为这是一个缓存问题,但它似乎不是,所以现在我不知道它是什么......

    var img = $("<img />").attr('src', imageSource)
    .load(function() {
        if (!this.complete || typeof this.naturalWidth == "undefined" || this.naturalWidth == 0) {
            $("#imagePopup .content").html('Image failed to load.');
        }
        else {
            $("#imagePopup .content").html(img);
        }
    });

2 个答案:

答案 0 :(得分:4)

以下对我有用:

var img = $('<img/>').load(function() {
   // Loading done ..
   img.appendTo("#imagePopup .content");
}).error(function(){
   // Unable to load image ..
   $("#imagePopup .content").html('Image failed to load.');
}).attr('src', imageSource);

答案 1 :(得分:-1)

IE8不支持naturlwidth。您必须使用height和width属性。