2009-06-22 14 views
22

Come posso catturare l'evento, chiudere la finestra del browser, in jQuery o javascript?Capture event onclose browser

+0

possibile duplicato del [evento close finestra del browser] (http://stackoverflow.com/questions/1631959/browser-window -close-event) –

risposta

9

siete alla ricerca per l'evento OnClose.

vedi: https://developer.mozilla.org/en/DOM/window.onclose

nota che non tutti i browser supportano questo (per esempio firefox 2)

+0

Ma in Ie7 non funziona?! – AlexC

+3

non funziona in molti browser. ma questo è l'unico evento per la chiusura di una finestra del browser –

+1

Questo non è abbastanza buono. L'unica soluzione funzionante è [Evento Chiudi finestra browser] (http://stackoverflow.com/questions/1631959/browser-window-close-event#1632004) –

15

http://docs.jquery.com/Events/unload#fn

jQuery:

$(window).unload(function() { alert("Bye now!"); }); 

o javascript:

window.onunload = function(){alert("Bye now!");} 
+0

questo evento funziona e quando si aggiorna, ma ho bisogno, solo quando chiudo il browser! – AlexC

+1

@Alexander Corotchi: Perché vuoi sapere quando l'utente chiude il browser? –

+0

Nella mia applicazione posso lavorare più utenti, e quando 1 utente chiude il browser è necessario eseguire una funzione per escludere questo utente da questa applicazione. – AlexC

3

Eventi onunload o onbeforeunload non è possibile utilizzare direttamente - non differiscono tra la finestra vicino, aggiornamento della pagina, modulo invia, link clicca o modifica URL.

L'unica soluzione di lavoro è How to capture the browser window close event?

+0

Spamming la tua risposta attraverso i commenti e poi risulta essere un link -solo risposta ... –

-1

Uomini, utilizzare questo:

if(myWindow.closed){ 
    callback(); 
    return; 
} 
+1

Questo non è "catturare" – AlliterativeAlice