Heim >Web-Frontend >js-Tutorial >Wie führe ich JavaScript-Code aus, wenn ein Browserfenster geschlossen oder aktualisiert wird?

Wie führe ich JavaScript-Code aus, wenn ein Browserfenster geschlossen oder aktualisiert wird?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-18 06:38:02866Durchsuche

How to Execute JavaScript Code When a Browser Window Closes or Refreshes?

Ausführen von JavaScript-Code beim Schließen des Fensters oder bei der Seitenaktualisierung

Bei der Arbeit mit Webanwendungen kann es entscheidend sein, bestimmten Code auszuführen, wenn ein Benutzer Schließt das Browserfenster oder aktualisiert die Seite. Dadurch können Sie Aktionen wie das Speichern von Benutzerdaten, das Auslösen von Bereinigungsvorgängen oder das Verfolgen der Website-Nutzung ausführen.

Verfügbare Optionen für das Schließen von Fenstern/die Ausführung von Code aktualisieren

Es gibt zwei primäre JavaScript-Ereignis-Listener, die hierfür verwendet werden können Zweck:

  • window.onbeforeunload: Dieses Ereignis wird ausgelöst, wenn der Benutzer versucht, das Fenster oder die Registerkarte zu schließen. Es fordert den Benutzer mit einem Bestätigungsdialog auf (z. B. „Seite verlassen?“ oder „Neu laden?“). Wenn jedoch kein String oder event.returnValue zurückgegeben wird, wird der Code ausgeführt, ohne eine Meldung anzuzeigen.
  • window.onunload: Dieses Ereignis wird unmittelbar vor dem Schließen des Fensters oder der Seite ausgelöst ist aufgefrischt. Im Gegensatz zu onbeforeunload wird der Benutzer nicht mit einem Bestätigungsdialogfeld aufgefordert.

Verwendung von Ereignis-Listenern

Sie können diese Ereignis-Listener mithilfe von Fenstereigenschaften zuweisen Folgende Syntax:

window.onbeforeunload = function() {
  // Code to execute on window closure or refresh
};

// OR using addEventListener
window.addEventListener("beforeunload", function(e) {
  // Code to execute on window closure or refresh
});

Hinweis für Iframes

Das beforeunload-Ereignis funktioniert nicht innerhalb von Iframes, wenn der Iframe von seinem übergeordneten Element gelöscht wird. Allerdings funktionieren die Unload- und Pagehide-Ereignisse in diesem Szenario in Chrome. Leider weist Firefox seit August 2023 einen Fehler auf, der verhindert, dass diese Ereignisse beim Löschen von Iframes funktionieren.

Das obige ist der detaillierte Inhalt vonWie führe ich JavaScript-Code aus, wenn ein Browserfenster geschlossen oder aktualisiert wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn