文件load事件:img、iframe
阿新 • • 發佈:2017-06-19
嵌套if 研究 else app function win ner jpg n)
iframe的 load 事件
在所有為IFRAME動態添加onload監聽事件的方法中,只有 使用事件監聽方式為 IFRAME 的 onload 事件綁定處理函數,IE6、7、8才有效。所以為 IFRAME 添加load事件完美方案如下:
// 事件監聽兼容方案 function addEvent(elem,event,fn){ if (elem.attachEvent) { elem.attachEvent(‘on‘+event,fn) } else { elem.addEventListener(event,fn,false) } } window.onload = function(){ var iframeA = document.createElement(‘iframe‘); iframeA.src = ‘http://www.baidu.com‘ addEvent(iframeA,‘load‘,function(){ document.body.bgColor = ‘#000‘; // 回調函數 }); document.body.appendChild(iframeA); }
優化頁面建議不要嵌套iframe,但是在內部項目還是很常見。其實在IE中,監控iframe加載完畢還可以采取監聽 onreadystatechange 事件。
IMG的 load 事件
img的load事件,我們使用 new Image()。這裏我們得註意 complete 事件。研究網上的得出以下代碼:
var img = new Image(); img.src= "http://i1.hoopchina.com.cn/user/627/17191627/17191627_big_3.jpg"; if (img.complete || img.width) { alert("該圖片已經在緩存中,不需要再下載") alert(img.height) } else { img.onload = function() { alert("圖片加載完成"); alert(img.height) } }
文件load事件:img、iframe