JavaScript + onbeforeunload

Ho una domanda riguardante la mia domanda. Ogni volta che l’utente chiude accidentalmente la finestra del browser, vorrei fare alcune operazioni di pulizia prima. Ho usato l’evento onunload ma il problema è che questo evento a volte sta sparando e talvolta no. Cosa dovrei fare, c’è modo migliore per gestire questo tipo di problema.

window.onbeforeunload = function() { return 'You have unsaved changes!'; } 

Vedere l’ articolo MSDN su onbeforeunload

Inoltre c’è una domanda simile in SO

Provare:

 window.onbeforeunload = function() { ...your code... } 

Dalla mia esperienza onunload funziona in modo diverso nei vari browser. Perché non usi un altro gestore di eventi chiamato onbeforeunload invece. Dovrebbe funzionare. Onbeforeunload verrà eseguito prima che la finestra si chiuda, quindi dovrebbe risolvere il tuo problema.

Questo funziona:

 window.onbeforeunload = function(){ console.log('closing shared worker port...'); return 'Take care now, bye-bye then.'; }; 

Questo è utile se, ad esempio, stai lavorando con SharedWorkers e devi dire al lavoratore che c’è una porta in meno da gestire, altrimenti potresti finire con l’aggiornamento di una scheda del browser e ottenere qualcosa come “Connesso con successo con: 10 altre tabs “perché la scheda una mantiene l’operatore in vita mentre gli altri aggiornamenti della scheda continuano a inviare nuove connessioni di porta all’array.

Spero che questo ti aiuti.

questa è una delle mie risposte che ti dà il onbeforeunload solo se l’utente vuole chiudere la finestra e anche dirottare il messaggio del browser per un certo grado …..

         Links   

penso che potrebbe essere utile per qualsiasi corpo grazie …..

Questo non è permesso a causa di motivi di sicurezza. onbeforeunload è un’API del browser con comportamenti diversi su browser diversi.