>  기사  >  웹 프론트엔드  >  window.open으로 열린 Windows의 onLoad 이벤트를 처리하는 방법은 무엇입니까?

window.open으로 열린 Windows의 onLoad 이벤트를 처리하는 방법은 무엇입니까?

DDD
DDD원래의
2024-10-24 14:40:02428검색

How to Handle onLoad Event for Windows Opened with window.open?

window.open으로 열린 Windows에 대한 onLoad 이벤트 처리

window.open을 사용하여 새 창을 만들 때 onload 이벤트 리스너가 새로 열린 창에서 작동하지 않습니다. 이 문서에서는 이 문제를 다루고 해결책을 제공합니다.

다음 코드는 문제를 보여줍니다.

<code class="js">window.popup = window.open($(this).attr('href'), 'Ad', 'left=20,top=20,width=500,height=500,toolbar=1,resizable=0');
$(window.popup).onload = function() {
  alert("Popup has loaded a page");
};</code>

이 코드는 IE, Firefox, Chrome과 같은 주요 브라우저에서는 작동하지 않습니다. 이 문제를 해결하려면 대신 addEventListener 메소드를 사용하십시오.

<code class="js">var myPopup = window.open(...);
myPopup.addEventListener('load', myFunction, false);</code>

IE를 지원해야 하는 경우 다음 대체 코드를 사용할 수 있습니다.

<code class="js">myPopup[myPopup.addEventListener ? 'addEventListener' : 'attachEvent'](
  (myPopup.attachEvent ? 'on' : '') + 'load', myFunction, false
);</code>

IE를 지원하는 것은 번거로울 수 있습니다. , 타겟 고객을 고려하고 필요한 경우 필요한 편의를 제공하는 것이 중요합니다.

위 내용은 window.open으로 열린 Windows의 onLoad 이벤트를 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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