LoginSignup
1
0

More than 5 years have passed since last update.

[coffee]ブラウザの「戻る・閉じる・再読み込み」が押された時にアラート

Last updated at Posted at 2017-06-13

EFO対策として、重要なフォームでは、
ブラウザの「戻る・閉じる・再読み込み」が押された時にアラートを出し、
離脱率を減らすという施策が行われる。
[参考] フォームの2大誤操作「閉じる・戻る」での離脱を減らす確認ダイアログを実装しよう/15か条の10

[コード要点]

・ブラウザでの「閉じる、戻る、再読み込み」があったときにアラート発生
・指定の要素に入力がない場合、アラートを発生させない。
・指定の要素へは、アラートを発生させない。

$(window).ready ->
  # [どの要素で入力されていたらアラート発生させるか指定]
  # (input要素、textarea要素、select要素が変更された場合)の値が変更された場合
  # ブラウザの戻るや更新ボタン、タブを閉じるときに
  # 警告をだすようにする
  $('input, textarea, select').on 'keyup change', ->
    $(window).on 'beforeunload', ->
      true
  # [アラート発生させない要素を指定]
  # 送信ボタンなどの通常の方法で画面遷移した場合は、
  # 通常通りアラートは表示されずに遷移する
  $('a, input[type=submit]').on 'click', ->
    $(window).off 'beforeunload'

[参考] 【jQuery】戻るや閉じるなどの画面が遷移する時にアラートを表示させる方法

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0