首頁 web前端 js教程 基於JS判斷iframe是否載入成功的方法(多種瀏覽器)

基於JS判斷iframe是否載入成功的方法(多種瀏覽器)

Jan 12, 2017 am 11:09 AM

推薦閱讀:

JS iFrame加載慢怎麼解決

在專案中經常要動態添加iframe,然後再對添加的iframe進行相關操作,而往往iframe還沒添加完呢,後邊的程式碼就已經執行完了,所以有些你寫的東西根本沒有顯示出來。這時,我們就要考慮是否可以等iframe載入完後再執行後邊的操作,當然,各種瀏覽器早就為我們考慮到啦,看下面:

ie瀏覽器

IE的每個elem節點都會擁有一個onreadystatechange事件,這個事件每次在elem內容發送變化的時候觸發,例如內容正在載入loading會觸發,內容載入完畢loaded會觸發,內容載入成功complete會觸發,這個函數還需要配合readyState ,這是ie上每個elem都擁有的屬性,用來查看每次觸發時候的狀態。

//先为iframe 添加一个 onreadystatechange
iframe.attachEvent("onreadystatechange", function(){
//此事件在内容没有被载入时候也会被触发,所以我们要判断状态
//有时候会比较怪异 readyState状态会跳过 complete 所以我们loaded状态也要判断
if(iframe.readyState === "complete" || iframe.readyState == "loaded"){
//代码能执行到这里说明已经载入成功完毕了
//要清除掉事件
iframe.detachEvent( "onreadystatechange", arguments.callee);
//这里是回调函数
}
});
登入後複製

其他瀏覽器(Firefox,Opera,chrome 等)

在其他非IE的瀏覽器上 Firefox,Opera,chrome 等 iframe 都會擁有一個 onload 事件,此事件只要觸發就說名內容已經加載完畢。

iframe.addEventListener( "load", function(){
//代码能执行到这里说明已经载入成功完毕了
this.removeEventListener( "load", arguments.call, false);
//这里是回调函数
}, false);
登入後複製

綜合一下

if(iframe.attachEvent){
iframe.attachEvent("onreadystatechange", function() {
//此事件在内容没有被载入时候也会被触发,所以我们要判断状态
//有时候会比较怪异 readyState状态会跳过 complete 所以我们loaded状态也要判断
if (iframe.readyState === "complete" || iframe.readyState == "loaded") {
//代码能执行到这里说明已经载入成功完毕了
//要清除掉事件
iframe.detachEvent("onreadystatechange", arguments.callee);
//这里是回调函数
}
});
}else{
iframe.addEventListener("load", function() {
//代码能执行到这里说明已经载入成功完毕了
this.removeEventListener("load", arguments.call, false);
//这里是回调函数
}, false);
}
登入後複製

注意:上面的函數必須放在iframe 被appendChild到body後,否則不會被觸發

以上內容是小編給大家介紹的JS判斷iframe是否加載成功的方法,希望對

以上內容是小編給大家介紹的JS判斷iframe是否加載成功的方法,希望對

以上內容是小編給大家介紹的JS判斷iframe是否加載成功的方法,希望對

以上內容是小編給大家介紹的JS判斷大家有幫助! 🎜🎜更多基於JS判斷iframe是否載入成功的方法(多種瀏覽器)相關文章請關注PHP中文網! 🎜
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

在JavaScript中替換字符串字符 在JavaScript中替換字符串字符 Mar 11, 2025 am 12:07 AM

在JavaScript中替換字符串字符

jQuery檢查日期是否有效 jQuery檢查日期是否有效 Mar 01, 2025 am 08:51 AM

jQuery檢查日期是否有效

jQuery獲取元素填充/保證金 jQuery獲取元素填充/保證金 Mar 01, 2025 am 08:53 AM

jQuery獲取元素填充/保證金

10個jQuery手風琴選項卡 10個jQuery手風琴選項卡 Mar 01, 2025 am 01:34 AM

10個jQuery手風琴選項卡

10值得檢查jQuery插件 10值得檢查jQuery插件 Mar 01, 2025 am 01:29 AM

10值得檢查jQuery插件

HTTP與節點和HTTP-Console調試 HTTP與節點和HTTP-Console調試 Mar 01, 2025 am 01:37 AM

HTTP與節點和HTTP-Console調試

自定義Google搜索API設置教程 自定義Google搜索API設置教程 Mar 04, 2025 am 01:06 AM

自定義Google搜索API設置教程

jQuery添加捲軸到Div jQuery添加捲軸到Div Mar 01, 2025 am 01:30 AM

jQuery添加捲軸到Div

See all articles