昨天同事負責一個首頁廣告,廣告采用的是多幀GIF動畫,在HTML演示頁面中采用的是jpg,運用Image對象的load事件來加上廣告,這樣就避免了廣告播放出來而圖片還沒有加載完成的尷尬局面,但是卻遇到了一個超級郁悶的事情,那就是在IE中load事件不停的執行,找了很多原因,最后在google上找到了:原來是多幀GIF引起的Image().load事件重復觸發的問題。又一次長見識了!而且還有人發帖說可以通過這個bug來模擬js的多線程~
解決方法:
var img=new Image();
img.load=function(){
//do something
img.load=null;//重新賦值為null
}
img.src='××.gif';
出處:http://www.js8.in/569.html