20 Stimmen

'beforeunload' Chrome-Problem

Ich habe dieses einfache Stück Code -

$(window).bind('beforeunload', function(){
    alert("Auf Wiedersehen")
});

Funktioniert gut mit Firefox, IE8, aber nicht in Chrome. Ist das ein bekanntes Problem oder gibt es dafür eine Alternative?

Eigentlich versuche ich, Details zu protokollieren, wann immer der Benutzer versucht, den Browser zu schließen.

function LogTime()
{
    jQuery.ajax({
      type: "POST",
      url: "log.php",
      data: "",
      cache: false,
      success: function(response)
      {
      }
    );
}

$(window).bind('beforeunload', function(){
    LogTime();
});

Dies funktioniert gut in Firefox, aber nicht in Chrome

1voto

miro Punkte 553

Wenn Sie kurz vor dem Entladen des Dokuments einige analytische Daten senden müssen, wählen Sie die navigator.sendBeacon() Methode anstelle von XMLHttpRequest.

Die sendBeacon() Methode ist darauf ausgelegt, eine nicht blockierende Übertragung kleiner Datenmengen durchzuführen.

Aber überprüfen Sie zuerst den canIuse Bericht, da die Methode noch nicht global unterstützt wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X