あなたはこれを防ぐことはできませんが、彼はリロードしないことを、ポップアップを介してユーザに通知することができます。これはonbeforeunloadウィンドウイベントで行われます。これはMDNに記載されています。
スクリプトタグ
var controllVar = 1;
あなたの親ウィンドウにこれを追加して、あなたのポップアップウィンドウにこれを追加します。 (ポップアップはwindow.open(...)
の返信です)。実際にはいくつかの集中的なエラーテストがあります。IEにはさまざまな味があり、複数のバグが表示されるからです。
window.onbeforeunload = function (e) {
//here we try accessing the popup
try {
if(!popup && popup.controllVar != 1) {
return;
}
} catch(e) {
return;
}
e = e || window.event;
// For IE and Firefox prior to version 4
if (e) {
e.returnValue = 'YOUR ERROR MESSAGE';
}
// For Safari
return 'YOUR ERROR MESSAGE';
};
あなたが回答TEXTAREAに、ページを残してみてくださいよりも、いくつかのテキストを追加する場合、これは、まさにここにStackOverflowの上のように動作します。あなたがあなたのマークアップを変更する必要があるので、あなたはすでにJSからfalseを返すされている
-1彼はこれについて尋ねていません。 – Icarus