Je souhaite m'assurer que l'utilisateur reçoive un avertissement lors de la fermeture de la fenêtre à certaines occasions (données non sauvegardées, par exemple). Fonctionne bien. MAIS: Je dois aussi faire un peu de nettoyage AVANT que la fenêtre ne se ferme mais APRÈS j'ai demandé si l'utilisateur veut vraiment la fermer. J'ai donc deux fonctions de rappel, une pour onbeforeunload qui lance la boîte de dialogue de confirmation, et une pour onunload qui devrait faire le nettoyage.onunload ne fonctionne pas en combinaison avec onbeforeunload dans Safari
Malheureusement, dans Safari, le rappel onunload ne semble pas être appelé.
Pourquoi?
$(window).on('beforeunload',function() {
if (connected)
return "Are you sure you want to close the window!";
});
$(window).on('unload',function() {
localStorage.removeItem("someItem"); // never executed in Safari
});