私がやりたいことは、ユーザーが x ボタンをクリックしてブラウザ ウィンドウを閉じようとしたときにのみ、何らかの機能を起動することです。ただし、更新時ではなく、次の関数のような「戻る」ボタンのクリックイベントが発生します。
$(window).unload( function () { alert("Bye now!"); } );
これを達成する方法はありますか?事前にThx
私がやりたいことは、ユーザーが x ボタンをクリックしてブラウザ ウィンドウを閉じようとしたときにのみ、何らかの機能を起動することです。ただし、更新時ではなく、次の関数のような「戻る」ボタンのクリックイベントが発生します。
$(window).unload( function () { alert("Bye now!"); } );
これを達成する方法はありますか?事前にThx
ユーザーがページをロードするとすぐに #default のデフォルト ロケーション ハッシュをユーザーに強制することができます。次に、人が戻るボタンで戻る場合、タイマーまたはウィンドウの「popstate」イベントでこれを検出できます。次に、この時点で別の URL に送信するなどの操作を行うことができます。
このようにして、「onbeforeunload」イベントでウィンドウのクローズを検出し、最後の段落で説明した方法で戻るボタンを押すことができます。面倒ですが、うまくいきます。
これを達成できないことを示すいくつかの回答: 更新またはウィンドウを閉じることによってトリガーされるアンロードイベントを区別する方法は? Refresh または Window Close によってトリガーされる Unload イベントを 区別する方法は? 提案された両方の「回避策」は、マウスの位置をチェックして、akinator に尋ねることです。
いいえ、これは不可能です。イベントはこのonbeforeunload
ようなことを行いますが、ウィンドウが閉じると常に発生します。ウィンドウがアンロードされた方法を区別しません。