ユーザーが「キャンセル」をクリックしたときの検出
ユーザーが「キャンセル」をクリックしたときに通知を受けて、ページのアンロードを中止することもできます。残念ながら、すぐに通知を受ける方法はありません。最善の方法は、「onbeforeunload」イベントに一意のグローバル変数を設定し、その変数が他の関数に設定されているかどうかを確認することです。ユーザーがページのアンロードを中止したことを直ちに通知する方法はありません。
「onbeforeunload」ダイアログの例を実行するために上で使用したコード例は次のとおりです。以下のように:
return "これはデモンストレーションです。どのオプションを選択してもページから離れることはできません。";
}
}
_isset=0;
window.location.reload();
false を返します。
}
このコードは、_isset という名前のグローバル変数を定義し、それをゼロに初期化します。 「onbeforeunload」イベントでは変数がチェックされ、変数が 1 に設定されている場合、アンロード ダイアログ ボックスは表示されません。 _isset が 1 になる唯一の方法は、ユーザーが以前にページのアンロードを中止した場合です。
しかし、ご覧のとおり、ユーザーが確認ボックスの処理を終了したことをすぐに通知する必要がある場合、このメソッドは役に立ちません。いつ画面に表示されるかは検出できますが、ユーザーが「キャンセル」をクリックした場合にその操作がいつ終了したかを知る方法はありません (ユーザーが「OK」をクリックした場合は、当然、アンロード イベントがトリガーされます)。
----------------------------------------------- ---------------
虽然如是,但还有高手给出如下代码 ^^
复制代码
代码如下:
"http://www. w3.org/TR/html4/strict.dtd">
アンロードテスト前
アンロードテスト前