首頁 > web前端 > js教程 > 主體

IE中圖片的onload事件無效問題與解決方法_javascript技巧

WBOY
發布: 2016-05-16 16:45:38
原創
1363 人瀏覽過

在web開發在獲取圖片寬高是很正常的事情,圖片在加載完成前是獲取不到圖片的寬高的,在加載完成後才可以獲取圖片本身的寬高,例如:

複製程式碼 程式碼如下:

var img = new Image();
img.src = new Image();
img.src = "loading.gif";
img.onload = function(){
 alert ( img.width );
};


OK?這段程式碼看著沒什麼問題,但在ie中會有一個bug,就是ie第一次打開的時候沒問題,第二次使用這個方法就悲劇了,ie沒反應了,即使刷新頁面也是一樣。因為IE會快取圖片,第2次載入的圖片,不是從伺服器上傳過​​來的,而是從緩衝區載入的。

先寫onload方法,再指定這張圖片的URL,這樣就正常了。所以,不是IE沒有觸發onload事件,而是因為載入緩衝區的速度太快,以至於沒有運行到img.onload的時候,onload事件已經觸發了。這樣就OK了。

程式碼如下:


var img = new Image();


var img = new Image(); alert ( img.width );
};img.src = "loading.gif";
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板