Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimanakah Iframes pada Domain Berbeza Boleh Berkomunikasi Menggunakan PostMessage?

Bagaimanakah Iframes pada Domain Berbeza Boleh Berkomunikasi Menggunakan PostMessage?

Barbara Streisand
Barbara Streisandasal
2024-11-26 06:12:08315semak imbas

How Can Iframes on Different Domains Communicate Using PostMessage?

Komunikasi Merentas Domain antara Iframe dan Tapak Induk

Apabila iframe berada pada domain yang berbeza daripada tapak induknya, komunikasi terus melalui kaedah atau capaian dokumen kandungan tidak dapat dilaksanakan. Dalam kes sedemikian, penyelesaiannya terletak pada pemesejan silang dokumen.

Komunikasi Ibu Bapa kepada Iframe

Dalam tetingkap induk:

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

Dalam iframe:

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

Iframe kepada Ibu Bapa Komunikasi

Dalam tetingkap induk:

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

Dalam iframe:

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

Ingat, asterisk (*) dalam fungsi postMessage() mewakili kad bebas, membenarkan mesej diterima oleh mana-mana asal.

Atas ialah kandungan terperinci Bagaimanakah Iframes pada Domain Berbeza Boleh Berkomunikasi Menggunakan PostMessage?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn