2009-10-20 4 views
17

Puis-je me fier à l'événement de déchargement de la fenêtre pour être déclenché lorsqu'un utilisateur ferme un onglet/une fenêtre/un navigateur?Événement de déchargement DOM Window, est-ce fiable?

Edit:

Trouvé une liste de ce qui déclenche l'événement unload dans IE. http://msdn.microsoft.com/en-us/library/ms536973%28VS.85%29.aspx

J'aimerais savoir dans quels cas l'événement de déchargement ne sera pas déclenché.

+0

vous devez donner plus de cas d'utilisation - qu'est-ce que vous voulez accomplir avec le déchargement? Il peut y avoir d'autres façons d'implémenter cette fonctionnalité que de décharger des événements. – Chii

Répondre

4

Pas dans tous les cas non. Le navigateur pourrait tomber en panne, etc., empêchant l'événement de se déclencher. L'utilisateur pourrait également utiliser des add-ons comme Grease Monkey pour empêcher l'événement de se déclencher également.

+2

C'est pourquoi j'ai dit "quand un utilisateur se ferme". Crashes du navigateur, coupures de courant, etc. sont un cas différent. – bhseo

+0

Eh bien, un utilisateur peut toujours fermer le navigateur en utilisant la tâche tuer etc – kemiller2002

+0

Si vous comptez sur le feu pour nettoyer quelque chose, vous ne pouvez pas. – kemiller2002

8

Vous voudrez probablement utiliser l'événement "onbeforeunload" aussi, it provides more control que l'événement "onunload". Cela dit, sachez que: Opera ne déclenche pas l'événement de déchargement lorsque le navigateur actualise la page ou utilise les boutons Précédent/Suivant pour naviguer hors de la page. Qui plus est, Opera ne déclenche jamais l'événement onbeforeunload. Donc, si vous soutenez Opera - soyez conscient de ces problèmes.

+0

Merci pour l'info Opera. – bhseo

Questions connexes