3
window.postMessage API를 사용하여 하위 문서 (iframe)에서 직접적인 부모에게 간단한 메시지를 보내려고합니다. 부모 문서 내에서window.postMessage가 iframe에서 부모 문서로 작동하지 않습니다.
나는 다음과 같은 한 :
window.addEventListener("message", receiveMessage, true);
var receiveMessage = function(event) {
console.log("Recieved event " + JSON.stringify(event));
}
을 다음, iframe에 나는 다음과 같습니다
내가 읽은 모든 것을 바탕으로window.parent.postMessage('message', '*');
,이 작업을해야하고 내 로그 메시지는 콘솔에 기록되어야합니다. 그것을 제외하고 작동하지 않습니다.
*를 targetOrigin으로 사용하는 것이 항상 안전하다고는 생각하지 않지만이 시점에서 나는 링크를 분류하고 싶습니다.
내가 누락 된 아이디어가 있습니까?
이러한 맥락에서 의미? 오류 메시지가 있습니까? – Frxstrem
iframe 요소에'message' 이벤트 핸들러가 있습니까? 'parent' 윈도우에서'postMessage()'가 호출 되었습니까? – guest271314
질문에 쓴 내용을 정말로 작성했다면,'receiveMessage'는 이벤트 핸들러로 첨부 할 때 여전히 정의되지 않습니다. 스크립트의 맨 위에 정의되어지기 전에 직접 선언하거나'function receiveMessage() {}'표기법을 사용하십시오. – Kaiido