-2

ページ/ウィンドウを閉じるときにコードを呼び出すにはどうすればよいですか?

alert("its close now");

ただし、onunloadまたはonbeforeunloadではありません。これにより、更新時にも呼び出されます。閉じるときにのみこのアラートを呼び出します。

4

2 に答える 2

1

onunload や onbeforeunload ではなく、リフレッシュ時にも呼び出される原因となります。閉じたときにのみこのアラートを呼び出したい

更新すると、現在のページは基本的に閉じられ、再度開かれ、onunloadおよびonbeforeunloadイベントが発生します。私の知る限り、ユーザーがページを更新するときにそれを避けることはできません。

于 2012-06-03T18:53:22.883 に答える
0

ここにあなたのためのメモがあります:

Refresh = Closing window and reopening it

onbeforeunloadそのため、ユーザーがウィンドウを更新または閉じたことを伝えることができないため、を使用する必要があります。

アップデート

あなたのコメントに基づいて:

ユーザーがページを開いたときと閉じたとき、およびページにどれだけ滞在したかを知りたいのですが、ページを何回更新してもかまいません。

これはあなたが期待したものかもしれません:

localStorage["t"] || (localStorage["t"] = 0);
var start = new Date();
window.onbeforeunload = function(){
    localStorage["t"] = +localStorage["t"] + (new Date() - start);
}

ユーザーがページに滞在した時間は に保存され、ページlocalStorage["t"]を離れるたびに更新されます。ただし、ユーザーがいつページを閉じたのかを知ることは不可能であるため、時間間隔を設定する必要があります。たとえば、024 時間後にリセットします。

于 2012-06-03T18:57:08.840 に答える