首頁 >web前端 >js教程 >不同域的iframe如何使用PostMessage進行通訊?

不同域的iframe如何使用PostMessage進行通訊?

Barbara Streisand
Barbara Streisand原創
2024-11-26 06:12:08397瀏覽

How Can Iframes on Different Domains Communicate Using PostMessage?

iframe 與父站點之間的跨域通訊

當iframe 與其父站點駐留在不同域時,透過方法直接通訊網域或內容文檔存取不可行。在這種情況下,解決方案在於跨文件訊息傳遞。

父級到Iframe 通訊

在父親視窗中:

myIframe.contentWindow.postMessage('hello', '*');

中iframe:

window.onmessage = function(e) {
    if (e.data == 'hello') {
        alert('It works!');
    }
};

window.onmessage = function(e) {
    if (e.data == 'hello') {
        alert('It works!');
    }
};

window.top.postMessage('hello', '*')

iframe到父級通訊在父親視窗中:在iframe中:記住,postMessage()函數中的星號(*)代表通配符,允許任何來源接收訊息。

以上是不同域的iframe如何使用PostMessage進行通訊?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn