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

IE6,IE7下js動態(tài)加載圖片不顯示錯誤

先描述一下出現(xiàn)這種匪夷所思bug的背景:
我在頁面加載的時候加載一堆小縮略圖,<a href="Javascript:void(0);" onclick="switch_image('1.jpg')"><img src="1.thumb.jpg" /></a>
這么多小的縮略圖標(biāo)簽循環(huán)平鋪下來,當(dāng)單擊小的圖片時,動態(tài)加載大的圖片顯示,就類似于淘寶的商品查看圖片。頁面上有一個標(biāo)簽:
<div id="pic-box"><img src="" id="big-image" /></div>
為了節(jié)省流量,加快頁面載入速度,先不加載大圖,當(dāng)用戶單擊小圖時,動態(tài)加載一張大圖顯示。
復(fù)制代碼 代碼如下:
<script>
function switch_image(im)
{
document.getElementById('big-image').src=im;
}
</script>

這種方式在IE6,7外所有的瀏覽器工作都正常,比如 IE8,Firefox, Opera, chrome, Safari。。。
就是IE6,7這兩個瀏覽器加載不了,單擊小圖的時候,有時候你能加載,有時候加載一半,有時候不能加載。
我以為問題出在src這個東西上面,有可能IE6,7修改src不能正確加載圖片,于是嘗試把切換函數(shù)修改為:
document.getElementById('pic-box').innerHTML='<img src="' + im + '" />';
IE6,7還是不行,于是想,有可能是圖片被緩存了,那么加上隨機數(shù):
document.getElementById('pic-box').innerHTML='<img src="' + im + '?r=' + Math.random() + '" />';
IE6,7依然不行。。
于是在想,可能是img用在innerHTML里面出現(xiàn)的問題,所以,改成用 appendChild
var img = document.createElement('img');
img.src= im;
document.getElementById('pic-box').appendChild(img);
還是不行。
再修改成用 new image來:

var img = new Image();
img.src= im;
document.getElementById('pic-box').appendChild(img);
還是不行。
百思不得其解,想,難道IE6,7不能動態(tài)加載圖片嗎?難道是img標(biāo)簽的問題?
既然這樣就換成背景圖加載吧,于是
document.getElementById('pic-box').style.background="url(" + im + ")";
IE6,7依然不行,上面這么多方法除IE6,7外其他都是正常的。
只有不停的Google,結(jié)果google到了:
IE6,7只有在用<a onclick="switch_image()" href="Javascript:void(0);"></a>這樣
動態(tài)加載圖片是才會出現(xiàn)這種情況,google到的一篇說明:

有幾個吃飽了沒事兒干的老外反復(fù)試驗發(fā)現(xiàn)這個問題是ie6中一個底層機制的bug,之后的版本已經(jīng)解決了。
據(jù)說<a href="Javascript:void(0)">或者<a href=#">這樣使用a標(biāo)簽的話并不能阻止a標(biāo)簽最后觸發(fā)一個什么行為,
導(dǎo)致ie6會錯誤的認(rèn)為頁面刷新或者重定向了,并且中斷了當(dāng)前所有連接,這樣新圖片的加載就被aborted了。
當(dāng)然這些吃飽了沒事兒干的老外們也提出了各種匪夷所思復(fù)雜無比的解決方案。

最簡單的方法有兩個,一個是這樣使用a標(biāo)簽<a href="switch_image(); return false;">,另外一個就是用div替換a標(biāo)簽來用。

實際上我發(fā)現(xiàn)不僅是IE6,IE7也同樣有這個bug,還有,采用:<a href="switch_image(); return false;">并不能解決問題。

所以推薦用其他標(biāo)簽替換a標(biāo)簽,最后一怒之下把所有的a標(biāo)簽替換為span,從此就再也沒出現(xiàn)這樣的問題了。

JavaScript技術(shù)IE6,IE7下js動態(tài)加載圖片不顯示錯誤,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 91娱乐 | 成年人三级网站 | 日韩精品一区二区三区中文在线 | 在线免费视频国产 | 性做久久久久 | 国产精品福利在线观看免费不卡 | 顶级欧美色妇xxxxx | 成人在线视频国产 | 色婷婷精品大全在线视频 | 69视屏 | 久青草国产手机视频免费观看 | 夜色55夜色66亚洲精品网站 | 欧美网站色 | 国产在线播放一区 | 亚洲国产日产无码精品 | 成人在线视频国产 | 五月丁香花 | 99在线在线视频免费视频观看 | 久久性色 | 国产精品一国产精品免费 | 美女被男人扒开下面无遮无挡 | 成人在线免费小视频 | 欧美精品免费一区欧美久久优播 | 久久88综合 | 激情一区二区三区成人 | 12一15女人a毛片 | 精品久久久久久国产 | 婷婷综合视频 | 亚洲欧美一区二区三区麻豆 | 色老板成人永久免费视频 | 韩国免费毛片 | 伊人小婷婷色香综合缴缴情 | 91在线免费观看网站 | 亚洲一区二区三区亚瑟 | 国产成人精品免费午夜 | 性做久久久久久网站 | 一级毛片免费不卡 | 99精品久久99久久久久久 | 国产偷国产偷亚洲高清人乐享 | 在线亚洲欧洲国产综合444 | 亚洲成人视屏 |