首页 > web前端 > js教程 > IE 缓存策略的BUG的解决方法_javascript技巧

IE 缓存策略的BUG的解决方法_javascript技巧

WBOY
发布: 2016-05-16 19:11:21
原创
987 人浏览过

今天是发现bug的高产期。

IE在解析innerHTML的时候居然会忽略Cache策略,简单的重复加载图片。请看以下代码:










保存到本地作为一个htm文件,然后用IE打开(允许脚本运行),然后用http监视工具可以看到,IE发起了100个请求,一个都不cache!

在FireFox下面就没有问题,只发起一个请求。

复制代码 代码如下:

用这段代码可以解决这个问题 

 
 
 
var imageholder=new Image() 
imageholder.src="http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif" 
 
 
 
 
 
document.getElementById("div1").innerHTML = 
""; 
document.getElementById("p1").src=imageholder.src; 
document.getElementById("p2").src=imageholder.src; 
document.getElementById("p3").src=imageholder.src; 
 
 
 

复制代码 代码如下:

这个bug的官方描述见: 

http://support.microsoft.com/default.aspx?scid=kb;en-us;319546 

此外 http://www.bazon.net/mishoo/Articles/msie/958/ 指出background-image会带来一样的问题。 

ms的官方解决方案是象这样: 

 
 
 

 
 
 
http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif">
 
 
 

如果不怕麻烦的话,这样做可以更快一点点,也更保险: 

 
 
 
 
 
 
http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif" onreadystatechange="if(readyState=='complete')setTimeout('test()',0)">
 
 
 

更多方法:
http://www.blogjava.net/emu/archive/2006/03/01/33082.html
相关标签:
ie
来源:php.cn
上一篇:一个快速添加标签的小玩意,但在FF下不能用,望高手指点_表单特效 下一篇:用JS实现的一个include函数_javascript技巧
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
相关专题
更多>
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板