1

これは私を夢中にさせてきたものです。

イベント時に ajax 応答を行うために、ユーザーがページを閉じるか、ページから移動するかを検出しようとしています。私はこれを呼び出すためにほぼすべての可能な方法を試しましたが、うまくいきませんでした。私が考えることができる唯一のことは、問題のアクティベートウィンドウがwindow.open()メソッドを使用して起動されたことです。それは何か問題を引き起こす可能性がありますか?私がこれまでに持っているもの:

window.onbeforeunload = function() {
   //ajax stuff here
};

ただし、ページが完全に読み込まれると、これが機能しないことに気付きました。イベントは、ページの読み込み中に最初の数ミリ秒以内に発生し (ウィンドウを開いてすぐに閉じようとした場合)、その後は機能しません。

何か案は?

4

2 に答える 2

1

古いバージョンの IE と Firefox にも対応しています。

window.onbeforeunload = function (e) {
  var message = "Your confirmation message goes here.",
  e = e || window.event;
  // For IE and Firefox
  if (e) {
    e.returnValue = message;
  }

  // For Safari
  return message;
};
于 2013-04-15T16:03:32.360 に答える