2016-11-29 1 views
0

다른 도메인에 src가있는 iframe을 포함하는 페이지를 만들었습니다. 1 분 후 또는 2 분 후에 다른 페이지로 리디렉션됩니다. 내가 iframe을 내부 소스에서 이벤트 메시지를 수신하여 리디렉션을 피하기 위해 노력하고 있어요 : 따라서다른 도메인의 iframe에서 이벤트 수신 대기

postMessage event

, 나는 메시지를 잡기 위해 다음 코드를 생성 :

function slotslibrequest(event){ 
    if (event.origin !== "http://slotslib.com") 
    return; 
    event.source.postMessage($('.flash.flash-inner').width(), 
          event.origin); 
} 

if (window.addEventListener) { 
// For standards-compliant web browsers 
window.addEventListener("message", slotslibrequest, false); 
} 
else { 
window.attachEvent("onmessage", slotslibrequest); 
} 

문제는 제가 만든 리스너가 iframe에서 postMessage를 수신 할 수 없다는 것입니다. 아무도 내가 틀린 것을 알고 있니?

미리 감사드립니다.

답변

0

이가 가능합니까?

"아니오"라고하는 것이 유감입니다. iframe은 (브라우저 엔진에 의해) 다른 DOM 문서로 간주됩니다. 내부 iframe 응용 프로그램에서이를 관리해야합니다.

+0

당신은 내가 단지 사이에 스크립트를 삽입해야한다는 것을 의미합니까? – juanora

+0

나는 또한 추가했습니다 : document.getElementById ('targetFrame'). contentWindow.addEventListener ("message", slotslibrequest, false); – juanora

관련 문제