首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IE 11中的jQuery 1.8不会在页面加载时触发图像加载事件

IE 11中的jQuery 1.8不会在页面加载时触发图像加载事件
EN

Stack Overflow用户
提问于 2014-03-25 02:58:08
回答 1查看 1.3K关注 0票数 4

我有一个动态加载图像的.NET应用程序。我有一个加载gif显示,直到图像加载。然后显示图像。

加载的gif图像大小为16x11。加载的图像都会调整为80px宽度。

此代码在IE8-10中有效(但在IE11中不起作用):

代码语言:javascript
复制
$(imagesToLoadList).each(function () {

    var image = $(this);
    var realSrc = image.attr('real-src');

    var demandedImageIndex = parseInt(categoryId) + (scrollCount * 10) + index;

    image.unbind();
    image.bind('load', { ImageIndex: demandedImageIndex }, ImageLoaded);
    image.attr('src', realSrc);

    index++;
});

function ImageLoaded(event) {

    //after image loaded 
}

在IE 11中,图像会加载,但不会调整为80px和stays16x11大小。当事件再次被激发时,它将正确调整大小。(App有一个滑块,所以每次更改幻灯片时都会调用load事件)。

有什么办法解决这个问题吗?

仅供参考,图像是否缓存并不重要。沿着IE8 bug的思路思考

EN

回答 1

Stack Overflow用户

发布于 2015-08-12 04:58:58

即使在jQuery 1.8.0/1.8.3 (现在最新的稳定版本是1.11.3/2.1.4 )中,它似乎也能在IE11中很好地工作。点击预览加载全尺寸图片- JSFiddle

代码语言:javascript
复制
var $img = $('img');

$img.one('click', function() {
    $img.one('load', function() {
        this.width = 320;
        this.height = 240;
        console.log('Image loaded');
    });

    this.src = $(this).data('large-src');
});
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>

<img src="http://oi59.tinypic.com/nxtdsp.jpg"
     data-large-src="http://oi57.tinypic.com/fegkeb.jpg"/>

如果您将提供与错误的工作代码片段,也许我可以帮助你。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22618231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档