37 votes

Crossbrowser onbeforeunload?

window.onbeforeunload() déclenche-t-il dans tous les navigateurs? J'ai besoin d'une fonctionnalité onbeforeunload qui est prise en charge au moins par IE6 et FF3.6.

Pour IE, onbeforeunload() ne semble être pris en charge que par IE9

14voto

Aelios Points 3121

J'ai trouvé une solution de contournement pour Firefox avec la fonction setTimeout car elle n'a pas le même comportement que les autres navigateurs Web.

Jetez un coup d'oeil s'il vous plait :

https://github.com/Aelios/crossbrowser-onbeforeunload

5voto

Ian Stanway Points 427

Sachez qu'il n'est pas pris en charge par les navigateurs mobiles, par exemple Safari, Opera Mobile & mini, Dolphin. Voir Existe - t-il une méthode alternative à utiliser onbeforeunload dans un safari mobile?

1voto

Brad Christie Points 58505

Je me souviens qu'IE était le seul navigateur à implémenter onbeforeunload , mais certains navigateurs ont décidé de l'implémenter.

En bref, IE est le seul navigateur (à quelques exceptions près) dans lequel vous trouverez cet événement de manière cohérente.

-6voto

Tushar Ahirrao Points 2189

Ensuite, vous pouvez utiliser les deux comme ceci:

 <body onunload="functionName();" onbeforeunload='functionName();' >
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X