>웹 프론트엔드 >JS 튜토리얼 >사용자가 브라우저 창을 닫거나 페이지를 새로 고치기 전에 코드를 실행하려면 어떻게 해야 합니까?

사용자가 브라우저 창을 닫거나 페이지를 새로 고치기 전에 코드를 실행하려면 어떻게 해야 합니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-18 12:00:05369검색

How do I Execute Code Before a User Closes the Browser Window or Refreshes the Page?

창 닫기 또는 페이지 새로 고침 전에 코드 실행

사용자가 브라우저 창을 닫거나 페이지를 새로 고칠 때 코드를 실행하려면 window.onbeforeunload 및 window.onunload 이벤트 핸들러. 이러한 핸들러는 브라우저에 따라 동작이 다릅니다.

이벤트 핸들러 할당

속성 할당 또는 addEventListener 메소드를 사용하여 이러한 이벤트 핸들러를 설정할 수 있습니다.

// Property assignment
window.onbeforeunload = function() { 
  // Code to execute
};

// Event listener
window.addEventListener("beforeunload", function(e) { 
  // Code to execute
});

window.onbeforeunload 이벤트

window.onbeforeunload는 일반적으로 사용자가 변경 사항을 저장하지 않은 채 페이지를 떠나는 것을 방지하는 데 사용됩니다. 그러나 문자열을 반환하지 않거나 event.returnValue를 설정하지 않으면 이벤트가 자동으로 코드를 실행합니다.

window.onunload 이벤트

window.onunload는 페이지가 언로드되기 직전에 트리거되는 보다 포괄적인 이벤트입니다. 이를 통해 사용자 활동 추적 또는 로컬 저장소 저장과 같은 작업을 수행할 수 있습니다.

참고:

  • window.onbeforeunload는 삭제된 iframe 내에서 작동하지 않을 수 있습니다. Firefox의 상위 항목(2023년 8월 기준).
  • 대신 window.pagehide 사용을 고려하세요. Firefox의 iframe에 대한 window.onbeforeunload.

위 내용은 사용자가 브라우저 창을 닫거나 페이지를 새로 고치기 전에 코드를 실행하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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