Mixin and Primitive Interface

settings_applicationsWindowEventHandlers

Mixin and Primitive Interface

Editing
  • settings_backup_restore
  • bug_report

Event handleronunload

insert_drive_fileEventinterfaceopen_in_new
Event interface의 unload 이벤트는 WindowEventHandlers의 onunload 핸들러에 의해 구현된다.

WindowEventHandlers의 onunload는(은) Event interface의 unload 이벤트 타입의 핸들러이고 이벤트 리스너로 사용된다.

기본 개요

설명

unload 이벤트가 발생하는 시점

unload 이벤트는 다음의 이벤트 이후에 발생한다.

window, frame의 경우

  • 다른 페이지로 이동할 때
  • 창이 닫힐 때

리소스의 경우

웹 문서 내에서 사용중인 리소스가 제거되는 경우에 발생한다.

이슈

unload 이벤트가 발생하는 시점은 다음과 같은 특징이 있다.

  • 리소스에게 적용하는 경우에 이미지, IFrame 등 모든 리소스는 여전히 존재한다.
  • 창을 닫는 경우에 최종 사용자는 아무것도 볼 수 없다.
  • 창을 닫는 경우에 UI 상호 작용은 비효율적이다.
  • 오류가 발생해도 언로딩(unloading) 절차는 중단되지 않는다.

 

이 이벤트 타입은 다음과 같은 이유로 사용하지 않기를 권고하고 있다.

  • 웹브라우저 호환성 문제가 발생될 수 있다.
  • 모바일에서 불안정하게 동작할 수 있다.

대체

unload 이벤트를 감지하려는 경우 pagehide 이벤트가 가장 좋은 대안이다. 참고로 세션의 종료를 알리는 데 사용하는 가장 좋은 이벤트는 visibilitychange 이벤트이다.

구문

형식
document.body.addEventListener("unload", function() { });

명세

typeunload
bubblesno
cancelableno
handleryes

지원 웹브라우저