ホームページ > 記事 > ウェブフロントエンド > ブラウザの終了イベントを確実に検出し、保存されていないデータを処理するにはどうすればよいですか?
ブラウザ終了イベントの検出
通常の方法でブラウザ終了イベントを検出するのが困難ですか?この詳細なガイドでは、ウィンドウのクローズ、アンロード、またはアンロード前イベントの監視に役立つ包括的なソリューションを提供しますので、心配する必要はありません。
解決策
次のコード スニペットは、巧妙に対処しています。問題:
window.onbeforeunload = function (event) { var message = 'Important: Please click on \'Save\' button to leave this page.'; if (typeof event == 'undefined') { event = window.event; } if (event) { event.returnValue = message; } return message; }; $(function () { $("a").not('#lnkLogOut').click(function () { window.onbeforeunload = null; }); $(".btn").click(function () { window.onbeforeunload = null; }); });
この解決策には、onbeforeunload イベント ハンドラーが組み込まれています。ブラウザウィンドウが閉じる前にトリガーされます。メッセージ変数はカスタム プロンプトを表示し、ページを離れる前にデータを保存するようユーザーに通知します。
特に、ページ上の特定の要素をクリックしたときにプロンプトが表示されないようにする補助関数が含まれています (この場合、 #lnkLogOut 要素と .btn 要素)。
Firefox の互換性に関する考慮事項
この間コードは通常、他のブラウザでも機能しますが、Firefox ではカスタム プロンプトが表示されない場合があることに注意してください。このような場合、リンクされたスレッドで説明されているように、代替方法を検討する必要がある場合があります。
以上がブラウザの終了イベントを確実に検出し、保存されていないデータを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。