Window: pagehide イベント

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

pagehide イベントは、ブラウザーがセッションの履歴から他のページを表示する過程において、現在のページを非表示にしたときに Window へ送られます。例えば、ユーザーがブラウザーの戻るボタンをクリックしたとき、現在のページはひとつ前のページが表示される前に pagehide イベントを受け取ります。

バブリング なし
キャンセル 不可
インターフェイス PageTransitionEvent
イベントハンドラープロパティ onpagehide

この例では、イベントハンドラーが pagehide イベントを監視するために確立され、ページが再利用できるように保存されようとするときに特殊な扱いを行います。

js
window.addEventListener(
  "pagehide",
  (event) => {
    if (event.persisted) {
      /* このページは破棄されないので、後で再利用することができます */
    }
  },
  false,
);

これは onpagehide イベントハンドラープロパティを Window 上で利用することで書くこともできます。

js
window.onpagehide = (event) => {
  if (event.persisted) {
    /* このページは破棄されないので、後で再利用することができます */
  }
};

仕様書

Specification
HTML Standard
# event-pagehide

ブラウザーの互換性

BCD tables only load in the browser

関連情報