Bug firefox sur le onbeforeunload?
Publié : 22 sept. 2008, 13:15
Voila une page web très simple avec un onBeforeUnload :
Mon problème se présente dans le cas suivant : quand plusieurs onglets sont ouverts et que l'on essaye de fermer firefox, il fait apparaitre un message demandant la confirmation de la fermeture en précisant que l'on va fermer plusieurs onglets. (si vous avez laissé la petite case coché dans cette popup
)
Seulement dans le cas ou on utilise "onbeforeunload" comme dans le code de la page cité précédemment, on se rend compte que le code javascript est appelé AVANT la popup de confirmation. Du coup si dans la popup de confirmation on annule pour ne pas quitter, le script aura été exécute alors que la page n'aura pas été réellement déchargée.
Sur IE 7 comme sur Safari, le navigateur va bien exécuter le script que lorsque l'utilisateur valide qu'il veux quitter et n'exécute donc pas le code en cas d'annulation.
J'ai rechercher une référence à ce bug sur le bugzilla de firefox sans succès, et j'aimerais donc savoir si il s'agit d'un bug ou non?
(je voulais reporter ce bug directement mais j'ai eu peur de reporter un truc qui n'est pas un bug, alors je demande ici avant
)
J'ai fais ce test sur firefox 3.0.1, IE7 et Safari 3.1.2. J'ai aussi voulut essayer sur Chrome pour comparer mais il ne demande pas de confirmation avant de quitter.
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
Code : Tout sélectionner
<html>
<head>
<title></title>
</head>
<body onbeforeunload="alert('test')">
</body>
</html>

Seulement dans le cas ou on utilise "onbeforeunload" comme dans le code de la page cité précédemment, on se rend compte que le code javascript est appelé AVANT la popup de confirmation. Du coup si dans la popup de confirmation on annule pour ne pas quitter, le script aura été exécute alors que la page n'aura pas été réellement déchargée.
Sur IE 7 comme sur Safari, le navigateur va bien exécuter le script que lorsque l'utilisateur valide qu'il veux quitter et n'exécute donc pas le code en cas d'annulation.
J'ai rechercher une référence à ce bug sur le bugzilla de firefox sans succès, et j'aimerais donc savoir si il s'agit d'un bug ou non?
(je voulais reporter ce bug directement mais j'ai eu peur de reporter un truc qui n'est pas un bug, alors je demande ici avant

J'ai fais ce test sur firefox 3.0.1, IE7 et Safari 3.1.2. J'ai aussi voulut essayer sur Chrome pour comparer mais il ne demande pas de confirmation avant de quitter.
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1