0

unload イベントを使用しようとしましたが、chrome または Firefox では機能しないようです。だから私は別の方法を試しました。問題は、ページ非表示のコールバックが決して呼び出されないように見えることです

if ("onpagehide" in window) {
      window.addEventListener("pageshow", function(){alert("enter page")}, false);
      window.addEventListener("pagehide", function(){alert("leave page")}, false);
} else {//for IE
     window.addEventListener("load", function(){alert("enter page")}, false);
     window.addEventListener("unload", function(){alert("leave page")}, false);
}
4

1 に答える 1

1

Firefox についてはわかりませんが、Chrome は window.onunload から呼び出されたアラートを無視します。また、URL のどの部分も、場合によってはその他のものも変更できません。そのため、イベントが発生していないように見えることがあります。起動しているかどうかを確認するには、ハンドラー関数から文字列を返すことができます。これにより、「このページを離れてもよろしいですか?」のいずれかが表示されます。メッセージボックス。

于 2013-05-30T20:46:34.470 に答える