>웹 프론트엔드 >JS 튜토리얼 >다른 도메인의 Iframe이 PostMessage를 사용하여 어떻게 통신할 수 있나요?

다른 도메인의 Iframe이 PostMessage를 사용하여 어떻게 통신할 수 있나요?

Barbara Streisand
Barbara Streisand원래의
2024-11-26 06:12:08383검색

How Can Iframes on Different Domains Communicate Using PostMessage?

Iframe과 상위 사이트 간의 도메인 간 통신

iframe이 상위 사이트와 다른 도메인에 있는 경우 방법을 통해 직접 통신 또는 콘텐츠 문서에 액세스할 수 없습니다. 이러한 경우 해결책은 문서 간 메시징에 있습니다.

상위-Iframe 통신

상위 창에서:

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

In iframe:

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

iframe을 상위로 통신

상위 창에서:

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

iframe에서:

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

postMessage() 함수의 별표(*)를 기억하세요. 와일드카드를 나타내며 모든 출처에서 메시지를 수신할 수 있습니다.

위 내용은 다른 도메인의 Iframe이 PostMessage를 사용하여 어떻게 통신할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.