IE在解析innerHTML的時候居然會忽略Cache策略,簡單的重復加載圖片。請看以下代碼:

<HTML> <HEAD> <BODY> <SCRIPT LANGUAGE="JavaScript"> <!-- var st="<img src=/"http://imgcache.qq.co " /> a黄色网,在线免费看黄,特黄aaaaaa久久片

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

IE 緩存策略的BUG的解決方法

今天是發現bug的高產期。

IE在解析innerHTML的時候居然會忽略Cache策略,簡單的重復加載圖片。請看以下代碼:

<HTML>
<HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
var st="<img src=/"http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif/">"
var ar = new Array(101);
window.onload=function(){
    document.body.innerHTML = ar.join(st);
}
//-->
</SCRIPT>
</BODY>
</HTML>

保存到本地作為一個htm文件,然后用IE打開(允許腳本運行),然后用http監視工具可以看到,IE發起了100個請求,一個都不cache!

在FireFox下面就沒有問題,只發起一個請求。
復制代碼 代碼如下:
用這段代碼可以解決這個問題 

<html> 
<head> 
<script language=JavaScript> 
var imageholder=new Image() 
imageholder.src="http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif" 
</script> 
</head> 
<body> 
<div id="div1"></div> 
<script language=JavaScript> 
document.getElementById("div1").innerHTML = 
"<img id='p1'><img id='p2'><img id='p3'>"; 
document.getElementById("p1").src=imageholder.src; 
document.getElementById("p2").src=imageholder.src; 
document.getElementById("p3").src=imageholder.src; 
</script> 
</body> 
</html> 

復制代碼 代碼如下:
這個bug的官方描述見: 

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

此外 http://www.bazon.NET/mishoo/Articles/msie/958/ 指出background-image會帶來一樣的問題。 

ms的官方解決方案是象這樣: 

<HTML> 
<HEAD> 
<BODY> 

<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var st="<img src=/"http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif">http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif/">" 
var ar = new Array(101); 
function test(){ 
document.getElementById("d").innerHTML = ar.join(st); 
document.getElementById("d").style.display="block"; 

setTimeout("test()",1000); 
//--> 
</SCRIPT> 
<div id="d"><img src="http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif">http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif"></div> 
</BODY> 
</HTML> 

如果不怕麻煩的話,這樣做可以更快一點點,也更保險: 

<HTML> 
<HEAD> 
<BODY> 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var st="<img src=/"http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif">http://imgcache.qq.com/qzone/item/orig/11/3179_5.gif/">" 
var ar = new Array(101); 
function test(){ 
document.getElementById("d").innerHTML = ar.join(st); 
document.getElementById("d").style.display="block"; 

//--> 
</SCRIPT> 
<div id="d"><img src="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)"></div> 
</BODY> 
</HTML> 

更多方法:
http://www.blogJava.NET/emu/archive/2006/03/01/33082.html

JavaScript技術IE 緩存策略的BUG的解決方法,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产极品一区 | 韩国一级毛片视频免费观看 | 精品欧美亚洲韩国日本久久 | 日韩福利影视 | 免费精品美女久久久久久久久久 | 思思久久这里只精品99re66 | 人人澡人人澡人人看青草 | 国产在线短视频 | 四虎影视国产精品永久在线 | 精品999视频| 成人小视频在线免费观看 | 国产精品美女久久久久 | 99热在线只有精品 | 伊人小婷婷色香综合缴缴情 | 国产永久视频 | 色哟哟色院91精品网站 | 国产免费叼嘿在线观看 | 亚洲国产成人成上人色 | 中文字幕日韩一区 | jizz亚洲视频 | 色视频在线观看网站 | 国产福利91精品一区二区三区 | 久99久热只有精品国产99 | 色呦呦网站在线观看 | 亚洲婷婷网| 免播放器在线观看 | 91福利刘玥国产在线观看 | 韩国精品一区二区三区 | 成年黄网站色视频免费观看 | 亚洲国产爱 | 午夜国产在线观看 | 亚洲图片另类图片 | se视频在线观看 | 97超级碰久久久久香蕉人人 | 四虎免费永久在线播放 | 欧美透逼视频 | 欧美性色综合网 | 韩国一大片a毛片女同 | 亚洲十欧美十日韩十国产 | 久久久久久网 | 五月天激情开心网 |