離脱確認ダイアログの仕様と表示方法

概要

  • ページ移動やページを閉じる際に、次のような確認ダイアログ(アンロードダイアログ)を表示できます。
    ここでは、このダイアログの仕様や表示方法を説明します。
  • なお、このダイアログの正式名称がはっきりしないので、ここでは「アンロードダイアログ」と表記しています。(Chromeのリリースノートでは”onbeforeunload dialogs”と表記していますが、少々長いのでこの名前にしています。)

基本的な仕様と表示方法

  • 基本的な表示方法
    beforeunloadイベントで任意の文字列を返却することで、ページ移動やページを閉じる際にアンロードダイアログを表示できます。アンロードダイアログを表示しない場合は文字列を返却しないようにします。

  • アンロードダイアログに表示するメッセージは変更不可
    以前は、文字列を返却することで表示するメッセージを変更できましたが、最近のブラウザではセキュリティ上の理由でメッセージを変更できなくなりました。
  • なお、独自メッセージを表示するためにalert()関数を使用すると、Chromeの場合は次のエラーになります。
    Blocked alert(‘…’) during beforeunload.