Maison > interface Web > js tutoriel > Comment exécuter du code à la fermeture de la fenêtre du navigateur ou à l'actualisation de la page ?

Comment exécuter du code à la fermeture de la fenêtre du navigateur ou à l'actualisation de la page ?

DDD
Libérer: 2024-12-01 11:05:10
original
204 Les gens l'ont consulté

How to Execute Code on Browser Window Close or Page Refresh?

Exécution de code lors de la fermeture de la fenêtre du navigateur ou de l'actualisation de la page

Souvent, il est souhaitable d'effectuer des actions spécifiques lorsqu'un utilisateur ferme une fenêtre du navigateur ou actualise une page Web. Heureusement, il existe deux gestionnaires d'événements disponibles pour répondre à ce besoin : window.onbeforeunload et window.onunload.

window.onbeforeunload

L'événement onbeforeunload est déclenché lorsqu'un utilisateur tente de quitter une page. Généralement, il est utilisé pour afficher une boîte de confirmation demandant à l'utilisateur de confirmer son choix ou de l'empêcher de quitter la page s'il dispose de données non enregistrées. Cependant, en ne renvoyant pas de chaîne ou en définissant event.returnValue, vous pouvez empêcher le navigateur d'afficher un message et exécuter votre code en silence.

window.onunload

Le L'événement onunload est déclenché lorsqu'une page est déchargée du navigateur. Il est couramment utilisé pour effectuer des tâches de nettoyage telles que la suppression des écouteurs d'événements persistants ou la fermeture des connexions à la base de données.

Implémentation

Onbeforeunload et onunload peuvent être attribués aux propriétés de la fenêtre ou en utilisant la méthode .addEventListener. Voici un exemple :

// window property
window.onbeforeunload = function() {
  // Do something
};

// .addEventListener
window.addEventListener("beforeunload", function(e) {
  // Do something
});
Copier après la connexion

Remarque :

Dans le cas des iframes, les événements onbeforeunload ne se déclenchent pas lorsque l'iframe est supprimée par son parent, mais déchargent et les événements pagehide le font. Cependant, Firefox présente actuellement un bug qui empêche le déclenchement de ces événements en cas de suppression d'iframe, ce qui rend impossible l'exécution de code immédiatement avant la suppression d'une iframe dans Firefox.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal