자식 창이 닫히면 부모 창이 통보받을 수 있습니까? (다른 도메인에 있습니까?)자식 창이 닫히면 부모 창이 통보받을 수 있습니까? (diff 도메인에서)
다른 도메인에있을 때 window.opener를 돌아 다니려고합니다.
아이 창을 닫을 때 어떻게 든 알릴 수 있습니까?
자식 창이 닫히면 부모 창이 통보받을 수 있습니까? (다른 도메인에 있습니까?)자식 창이 닫히면 부모 창이 통보받을 수 있습니까? (diff 도메인에서)
다른 도메인에있을 때 window.opener를 돌아 다니려고합니다.
아이 창을 닫을 때 어떻게 든 알릴 수 있습니까?
창 닫기를 직접 알릴 수는 없지만 window.open()
에 의해 반환 된 창 개체 참조의 closed
속성을 검사하여 자식 창이 닫힌 경우 해결할 수 있습니다. 여기
closed
속성을 폐쇄 표시 예입니다 :
var win = open('http://www.google.com');
var intervalId = setInterval(function() {
if (win.closed) {
clearInterval(intervalId);
alert('Window closed! Hoorah!');
}
}, 5000);
팝업 코드 1/두 조각과 더 나은 솔루션 :
부모의$(window).bind('unload',
function(){
window.opener.PopupUnload(window)
})
2/(메인 윈도우)
function PopupUnload(wnd){
setTimeout(function(){ // setTimeout is for IE
if(wnd.closed)
alert('You just killed me...')
},10)
}
,174 이 코드 (setInterval을()와 함께) 영원히라는 기능 없음으로
당신은 닫고 새로 고침 팝업 (POST/GET)
(IE8과 FF3에서 테스트)의 차이가
부모와 팝업 창을 다른 곳에서 불러 오면'window.opener.PopupUnload' 호출이 실패합니다 도메인 간 사이트 스크립팅 제한으로 인해 –
직접 통지 질수 있도록 자식 창이 별도의 도메인에 있기 때문에 맞습니까? – Adam
창이 닫힐 때 해결할 수있는 적합한 브라우저 이벤트가 없기 때문입니다. –
Woow..great man .. 매력처럼 일 했어. 고마워요. – BKM