Pokud vím, nemůžete ve skutečnosti testovat, zda je prohlížeč zavřený; můžete otestovat pouze zavření okna (nebo karty). To obecně stačí, pokud ovšem nedojde k obnovení stránky, protože se počítá jak za zavření, tak za opětovné otevření webové stránky v okně nebo na kartě. Potřebujeme obslužnou rutinu události pro kliknutí na tlačítko pro obnovení stránky v prohlížeči, ale nejsem si jistý, zda takový existuje. Tady je něco:
Jak zobrazit "Opravdu chcete opustit tuto stránku?" kdy dojde ke změnám?
a také
Zpracování události zavření prohlížeče a obnovení stránky
Jedna věc, na kterou jsem narazil při pokusu najít něco o obslužné rutině události aktualizace stránky, je pojem použití „místního úložiště“. Jako součást obslužné rutiny on-before-unload byste mohli vložit malou datovou položku s časovým razítkem do místního úložiště. Aktivujte na serveru jakýsi časovač a před vymazáním relace počkejte, až tato doba vyprší. Po načtení stránky otestujte místní úložiště pro danou datovou položku. Pokud existuje a časové razítko bylo velmi nedávné, víte, že stránka byla obnovena a na základě toho může dělat vhodné věci – jako je odeslání zprávy AJAX serveru, která mu řekne, že relaci zatím nevymaže.