これは重複している可能性が高いことを認識していますが、1日グーグル/SOを行ってきましたが、満足のいく答えが見つかりません. SOにすでに回答がある場合は、そこに送ってください。
Gmail と同じように、サイトを終了することを確認する終了メッセージ ポップアップを表示することを主張するクライアントがいます。(私はすでにそれに反論しようとしました。彼は動かないので、それがどのように悪い習慣であるかについてのコメントはありません。)
私はこのコードを見つけました:
<script>
window.onbeforeunload = function() {
return 'Are you sure you want to exit?';
}
<script>
しかし、ページのリロード、ナビゲーションのクリックなど、何をしても実行されます。
ユーザーがタブ/ブラウザを閉じたときにメッセージを表示したいだけです。私が見逃しているのは単純なものだと思いますが、私は Javascript の専門家ではありません。
どんな助けでも大歓迎です。
ありがとう
編集
これがかなりうまく機能しているものです。ありがとうございます!
var isLeavingSite = true;
//This would be called on each link/button click that navigates
$('a, input[type="submit"]').click(function(){
isLeavingSite = false;
});
window.onbeforeunload = function() {
if(isLeavingSite)
return 'Are you sure you want to exit?';
}