iframe之父子頁面通訊

2022-03-15 01:46:43 字數 798 閱讀 7174

iframe之父子頁面通訊

1、獲取 子頁面 的 window 物件

在父頁面中,存在如下兩個物件

window.frames

document.iframeelement.contentwindow

可以獲取到 子頁面 window 物件

// iframe id

document.getelementbyid('menuiframe').contentwindow

// iframe name

window.frames['menuiframe'].window

// iframe index 當前窗體的第幾個 iframe

window.frames[1].window

既然拿到了 window 物件,那函式和dom就到手了。

2、子 iframe 獲取 父頁面

window.parent 物件

window.top物件

// 判斷當前頁面是否是 iframe 或 頂級頁面

window.parent == window

window.top == window

window.parent 即為當前頁面的上一級頁面的 window 物件,如果當前頁面已是 頂層 頁面,則 window.parent 就是自己。

3、小例項

iframe之父子頁面相互傳參

傳送方 iframe.contentwindow.postmessage 要傳的引數 接收方 window.addeventlistener message function e false e是個物件,裡面包含了傳過來的引數 傳送方 parent關鍵字表示父視窗,如果乙個視窗沒有父視窗,則它的 p...

iframe巢狀頁面中的父子頁面通訊

同域 獲取標籤 parent.document.getelementbyid parentid 和 window.frames subiframe contentdocument.getelementbyid subdiv 獲取引數 引數需為所在頁面的全域性引數 parent.parentparam...

iframe跨域父子頁面通訊方法

儘管iframe因相容 效能等問題逐漸被替換掉,但有不少存量專案仍在使用。最近,我們部門一位小夥伴遇到iframe跨域相關問題,詳細如下 問題前置條件 有兩個系統a b 都是銀行存量老系統 a b跨域 a系統中有乙個頁面a b系統中有乙個頁面b b以iframe方式嵌在a頁面中。問題描述 那麼,if...