秒ハンドラ内によるダイアログにページ上に留まる場合、ユーザーが実際にページから移動したときに、それが呼び出されたハンドラをbeforeunload:しかしスキップは、ユーザーが、私は1つのbeforeunloadハンドラを持っている
$(window).on("beforeunload", function() {
cleanup();
});
自分のアプリケーションの別の部分かもしれません私は2番目のハンドラは常に最初に呼び出されることと最初のハンドラはならないことを、保証することができますどのように
$(window).on("beforeunload", function() {
return "Do you really want to leave";
});
:彼は本当にために継続的な操作のままにしたい場合は、ユーザーに尋ねる別beforeunloadハンドラを追加ユーザーがsと決める場合に呼び出されるページにはどうですか?
すでにunload
イベントを使用しようとしました。しかし、この機能では、クリーンアップ機能とバックエンド呼び出しを確実に実行しないため、これは機能しません。
これを試してください:http://stackoverflow.com/questions/17759703/is-there-any-way-to-detect-if-user-pressed-stay-on-page-or-leave -page-in-bef –
@IsmaelMiguelありがとうございます。この質問の回答は私の場合は一切ありません。ユーザーが去ったときにsthをしなければならないので、タイムアウトを使用することはできません。また、クリーンアップ関数でバックエンド呼び出しを行う必要があるので、 'unload'を使用することはできません。アンロードを使用すると、この呼び出しは実行されないことがあります。 – basilikum
あなたはそうです。これらの要件は実際には異なります。それに気付かなかった。本当にごめんなさい。 –