Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
警告: 開発者はこのイベントを使用するのを避けてください。下記の「使用上のメモ」を参照してください。
unload イベントは、文書または子リソースがアンロードされるときに発生します。
以下のイベントの後に発生します。
文書は以下のような状態にあります。
unload イベントは文書ツリーにも続くことに注意してください。親フレームのアンロードは、子フレームの unload の前に行われます(以下の例を参照)。
このイベント名を addEventListener() 等のメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。
一般的な Event です。
Window インターフェイスに加えて、イベントハンドラープロパティ onunload は以下のターゲットでも利用できます。
開発者はこのイベントを使用しないでください。
特にモバイルでは unload イベントが確実には発行されません。例えば、次の例では unload イベントはまったく発生しません。
また、 unload イベントは前方/後方キャッシュ (bfcache) と互換性がありません。このイベントを使用している多くのページは、イベントが発生した後はページが存在し続けないことを想定しているからです。これに対抗するため、いくつかのブラウザー(Firefox など)は unload リスナーがある場合、ページを bfcache に配置しませんが、これはパフォーマンスにとって悪いことです。他にも、 Chrome のように、ユーザーが操作しても unload を発行しないものもあります。
ユーザーのセッションの終わりを指示するために使用するのに最適なイベントは visibilitychange イベントです。 visibilitychange に対応していないブラウザーでは、 pagehide イベントが次善の選択肢となります。
ページのアンロードイベントを検出する場合は、 pagehide イベントを待ち受けするのがベストです。
unload イベントに関連する問題についての詳しい情報は、ページライフサイクル API ガイドを参照してください。
child-frame.html の内容を以下に示します。
親フレームがアンロードされると、 console.log() のメッセージに記述された順序でイベントが発生します。
| HTML # event-unload |
| HTML # handler-window-onunload |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2024年9月23日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.