js下判斷 iframe 是否加載完成的完美方法
更新時(shí)間:2010年10月26日 13:43:44 作者:
一般來(lái)說(shuō),我們判斷 iframe 是否加載完成其實(shí)與 判斷JavaScript 文件是否加載完成。
采用的方法很類似:
var iframe = document.createElement("iframe");
iframe.src = "http://m.fzitv.net";
if (!/*@cc_on!@*/0) { //if not IE
iframe.onload = function(){
alert("Local iframe is now loaded.");
};
} else {
iframe.onreadystatechange = function(){
if (iframe.readyState == "complete"){
alert("Local iframe is now loaded.");
}
};
}
document.body.appendChild(iframe);
最近, Nicholas C. Zakas 文章《Iframes, onload, and document.domain》的評(píng)論中 Christopher 提供了一個(gè)新的判斷方法(很完美):
var iframe = document.createElement("iframe");
iframe.src = "http://sc.jb51.net";
if (iframe.attachEvent){
iframe.attachEvent("onload", function(){
alert("Local iframe is now loaded.");
});
} else {
iframe.onload = function(){
alert("Local iframe is now loaded.");
};
}
document.body.appendChild(iframe);
幾點(diǎn)補(bǔ)充說(shuō)明:
IE 支持 iframe 的 onload 事件,不過(guò)是隱形的,需要通過(guò) attachEvent 來(lái)注冊(cè)。
第二種方法比第一種方法更完美,因?yàn)?readystatechange 事件相對(duì)于 load 事件有一些潛在的問(wèn)題。
復(fù)制代碼 代碼如下:
var iframe = document.createElement("iframe");
iframe.src = "http://m.fzitv.net";
if (!/*@cc_on!@*/0) { //if not IE
iframe.onload = function(){
alert("Local iframe is now loaded.");
};
} else {
iframe.onreadystatechange = function(){
if (iframe.readyState == "complete"){
alert("Local iframe is now loaded.");
}
};
}
document.body.appendChild(iframe);
最近, Nicholas C. Zakas 文章《Iframes, onload, and document.domain》的評(píng)論中 Christopher 提供了一個(gè)新的判斷方法(很完美):
復(fù)制代碼 代碼如下:
var iframe = document.createElement("iframe");
iframe.src = "http://sc.jb51.net";
if (iframe.attachEvent){
iframe.attachEvent("onload", function(){
alert("Local iframe is now loaded.");
});
} else {
iframe.onload = function(){
alert("Local iframe is now loaded.");
};
}
document.body.appendChild(iframe);
幾點(diǎn)補(bǔ)充說(shuō)明:
IE 支持 iframe 的 onload 事件,不過(guò)是隱形的,需要通過(guò) attachEvent 來(lái)注冊(cè)。
第二種方法比第一種方法更完美,因?yàn)?readystatechange 事件相對(duì)于 load 事件有一些潛在的問(wèn)題。
您可能感興趣的文章:
- js動(dòng)態(tài)創(chuàng)建上傳表單通過(guò)iframe模擬Ajax實(shí)現(xiàn)無(wú)刷新
- iframe子父頁(yè)面調(diào)用js函數(shù)示例
- js與jQuery 獲取父窗、子窗的iframe
- js iframe跨域訪問(wèn)(同主域/非同主域)分別深入介紹
- js中iframe調(diào)用父頁(yè)面的方法
- js操作iframe的一些方法介紹
- js實(shí)現(xiàn)網(wǎng)頁(yè)防止被iframe框架嵌套及幾種location.href的區(qū)別
- JS中Iframe之間傳值及子頁(yè)面與父頁(yè)面應(yīng)用
- js實(shí)現(xiàn)iframe動(dòng)態(tài)調(diào)整高度的代碼
- JavaScript實(shí)現(xiàn)同一頁(yè)面內(nèi)兩個(gè)表單互相傳值的方法
- jquery ajax提交表單從action傳值到j(luò)sp實(shí)現(xiàn)小結(jié)
- JS實(shí)現(xiàn)向iframe中表單傳值的方法
相關(guān)文章
JavaScript前端實(shí)現(xiàn)拼圖分割效果
這篇文章主要為大家詳細(xì)介紹了如何通過(guò)JavaScript前端實(shí)現(xiàn)拼圖分割效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-10-10
JavaScript檢測(cè)字符串中是否含有html標(biāo)簽實(shí)現(xiàn)方法
這篇文章主要介紹了JavaScript檢測(cè)字符串中是否含有html標(biāo)簽實(shí)現(xiàn)方法,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-07-07
微信小程序入門(mén)之廣告條實(shí)現(xiàn)方法示例
這篇文章主要介紹了微信小程序入門(mén)之廣告條實(shí)現(xiàn)方法,涉及微信小程序基于swiper與navigator組件的文字信息滑動(dòng)展示相關(guān)操作技巧,需要的朋友可以參考下2018-12-12
webpack如何自動(dòng)生成網(wǎng)站圖標(biāo)詳解
這篇文章主要給大家介紹了關(guān)于webpack如何自動(dòng)生成網(wǎng)站圖標(biāo)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-01-01
JavaScript forEach()遍歷函數(shù)使用及介紹
這篇文章主要介紹了JavaScript forEach()遍歷函數(shù)使用及介紹,本文講解了使用forEach遍歷數(shù)組的用法以及提前終止循環(huán)的一個(gè)方法技巧,需要的朋友可以參考下2015-07-07
基于javascript實(shí)現(xiàn)瀏覽器滾動(dòng)條快到底部時(shí)自動(dòng)加載數(shù)據(jù)
這篇文章主要介紹了基于javascript實(shí)現(xiàn)瀏覽器滾動(dòng)條快到底部時(shí)自動(dòng)加載數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下2015-11-11
ES6標(biāo)準(zhǔn) Arrow Function(箭頭函數(shù)=>)
ES6標(biāo)準(zhǔn)新增了一種新的函數(shù):Arrow Function(箭頭函數(shù)),為什么叫Arrow Function?因?yàn)樗亩x用的就是一個(gè)箭頭2020-05-05
javascript檢測(cè)移動(dòng)設(shè)備橫豎屏
移動(dòng)端的開(kāi)發(fā)過(guò)程中,免不了要判斷橫豎屏,然后在執(zhí)行其他操作,比如分別加載不同樣式,橫屏顯示某些內(nèi)容,豎屏顯示其他內(nèi)容等等。2016-05-05

