On 7/18/12 12:25 PM, Alberto wrote:
> Vorrei intercettare l'evento chiusura finestra
Non c'�. Puoi solo verificare, come hai gi� visto, l'evento in cui il
documento viene scaricato dalla memoria (il che avviene non solo quando
la finestra viene chiusa).
> (io mio applicatico gira dentro una finestra) o chiusura browser per effettuare alcune operazioni con un programma php (esci.php).
> Purtroppo i vari onunload si attivano ad ogni cambio pagina
Si, perch� quando cambi pagina � o chiudi la finesta, o fai un reload �
scarichi ("unload") il documento dalla memoria, e quindi tutto il
javascript ad esso relativo.
> Mi basterebbe funzionasse con firefox!
Andrebbe vista la casistica particolare: come apri il tuo applicativo,
in che tipo di finestra si trova, che fine fa la finestra madre se viene
lanciato da una popup, che navigazione hai, eccetera.
A spanne, ti posso dire che al giorno d'oggi il problema non si pone
dato che un applicativo solitamente gira in un'unica pagina, che si
modifica in base alle richieste XMLHttpRequest inviate al server
(vedasi, ad esempio, twitter).
Volendo potresti anche mettere la navigazione in un iframe che occupa
tutta la pagina, in questo mondo se l'utente cambia pagina tramite link
dell'applicativo non scatena; ma comunque se l'utente ricarica la
medesima pagina si.
Potresti fare qualche accrocchio, dipendentemente da come hai
l'applicativo, ma onestamente la cosa migliore � � come sempre � non
fidarsi troppo del client se si ha la logica server side. Inoltre ci
sarebbero diverse casistiche in cui la chiusura della finestra non possa
giungere al server. La cosa migliore � sempre gestire tali sistemi di
pulizia lato server.
Anche qui, dipende ovviamente molto da cosa vuoi fare.