標籤:onload
window onload 與 img onload事件
通常,window.onload就是載入完dom之後執行的。而img就是載入完圖片完執行它的onload事件,根據img的src是否載入完成。
因此,看下面代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>window onload與img onload</title> <script type=‘text/javascript‘> window.onload = function(){ var img = document.getElementById(‘img1‘); //var src = img.getAttribute(‘src‘); //img.setAttribute(‘src‘,‘‘);img.onload = function(){alert(1); }; //img.setAttribute(‘src‘,src);}; </script> </head> <body> <img src=‘6.png‘ id=‘img1‘/> </body> </html>註:上面的6.png自己找圖片替換上。
上面代碼將不會彈出1,因為window.onload已經包括圖片的onload了,而
圖片的onload是監聽img的src是否載入完成。去掉注釋即可彈出1,不可彈出1的可能你的圖片找不到,scr沒有載入完成,因此沒有彈出1.
ps:img的onload事件也可靈活應用,像一些特殊業務需求的,無法追加window.onload事件等,而考慮採用img的onload事件,如載入一張小圖片,做隱藏處理,裡面調用onload事件。