2012-02-26 26 views
0

ブラウザの戻るボタンが押されていることを検出/捕捉する方法はありますか?私は主に、これは偶然のバックキャッチしたい 戻るボタンが押されたときの検出/警告

アプリケーションを構築し、それがすぐにAJAXベースのアプリケーションに、ユーザが「戻る」になった場合、アプリケーションをリセットすることになっています要件ごとに変換されます...私が個人的に感じるように、ボタンを押すと、誰かがアプリケーションの冒頭でそれらに与えられた指示に従わない場合、私は彼らの余分な仕事について心配していません。

これを行う方法がない場合は、新しいウィンドウ/タブでアプリケーションを起動して、元に戻す履歴がないようにすることをお勧めします。

答えて

3

ボタンまたは偶発ページナビゲーションをバック検出するonbeforeunloadを使用することができます。

window.addEventListener("beforeunload", function() { 
    var ans = confirm("Are you sure?"); 
    if (ans) { 
      //TODO: add your code here 
    } 
}, false); 

現在のページを置き換えるために、ブラウザの履歴にあなたがwindow.location.replace()を使用することができます。

window.location.replace("yourNewURL"); 
0

あなたはonbeforeunloadをも設定することができます

window.onbeforeunload = function() { 
     return "Are you sure you wish to leave?"; 
    }; 
+1

"on"イベントではなく、イベント委譲を使用してみてください。そのイベントリスナーを削除したい場合は、そうすることができます。 – darkyndy

関連する問題