IE 11 img延迟加载,页面冻结

时间:2016-01-13 12:00:34

标签: javascript jquery internet-explorer

对于延迟加载图像我在自己的'data-original'属性中保存src值,并且在加载页面后,我将值从'data-original'属性复制到'src'。这会导致页面上所有图像的延迟加载。但是,在IE10和IE11上,在图像加载过程中我更改了菜单上的页面,页面只有在加载完所有图像后才会改变。在其他浏览器上,加载图像会中断并更改页面。如何告诉IE10 / 11中止当前加载并转到所选页面?

我用于将值从'data-original'属性复制到'src'的代码:

$(document).ready(function () {
        $.each($('.asset-image'), function () {
            var this_image = this;
            var src = $(this_image).attr('src') || '';
            if (!src.length > 0) {
                var dataOriginal = $(this_image).attr('data-original') || '';
                if (dataOriginal.length > 0) {
                    var img = new Image();
                    img.src = dataOriginal;
                    $(img).load(function () {
                        this_image.src = this.src;
                    });
                    $(img).error(function () {
                        $(this).unbind("error").attr("src","icon_no_image.png");
                    });
                }
            }
        });
    });

0 个答案:

没有答案