读书人

IE6反复加载图片BUG

发布时间: 2012-08-25 10:06:20 作者: rapoo

IE6重复加载图片BUG
1. 首先CSS背景图重复加载有解决方案,大家都知道。

解决方案:

if (IE6) {    try {        document.execCommand("BackgroundImageCache", false, true);    } catch(err) {}}


2. 通过JavaScript代码插入多个SRC相同的IMG元素。

解决方案:

<script>window.onload = function() {var div = document.getElementById('J_test');var html = ['<img src="space.gif" />','<img src="space.gif" />','<img src="space.gif" />','<img src="space.gif" />'].join('');// 延迟插入HTML                setTimeout(function() {div.innerHTML = html;}, 0);};</script><div id="J_test"></div><!-- 预先加载space.gif --><div style="display:none;"><img src="space.gif" /></div>


备注: 在jQuery.raedy里延迟0s会无效,必须等到space.gif加载完后延迟0s才有效果。

参考文档:
http://ued.taobao.com/blog/2010/05/17/ie6-duplicate-load-bug/http://www.zachleat.com/web/dear-ie6-please-cache-my-images/http://support.microsoft.com/default.aspx?scid=kb;en-us;319546

读书人网 >Web前端

热点推荐