延迟加载图像在IE9中不起作用(Jquery,waypoint)

时间:2011-08-30 15:52:06

标签: javascript jquery image internet-explorer-9

延迟加载图片在IE 9.0.8112.16421中无效。

以下是我的代码和示例: http://jsfiddle.net/BbA9M/46/

当我在IE9中打开它时,延迟加载图像不起作用,但是当我单击F12并打开开发人员工具然后刷新页面时,它工作得很好。

我尝试添加

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" />    
我的头,但它没有帮助。

您是否知道如何在IE9中正确运行此代码?

- 修改

当我更改这部分代码时:

if(deferred) {
$(objImg).animate({opacity: 0.1}, 250, function(){
objImg.src = deferred;
console.log('Lazy loading img:', objImg.getAttribute('deferred'));
}).animate({opacity: 1.0}, 1000);                        
}         

缩短:

if(deferred) {
objImg.src = deferred;                                     
}    

然后它有效。以下是示例:http://jsfiddle.net/BbA9M/53/ JQuery效果可能有问题,或IE9有一个奇怪的问题。

- 修改

我找到了解决方案。当开发人员工具关闭时,IE9不支持此行:

console.log('Lazy loading img:', objImg.getAttribute('deferred'));

1 个答案:

答案 0 :(得分:2)

嗯......根据您的解决方案,您可以添加:

if(console && console.log) {
     console.log('Lazy loading img:', objImg.getAttribute('deferred'));
}

通常,只有在使用调试器(或调试脚本)时才会出现控制台。快乐的编码!