L'evento onUnload scatta anche se carichi una nuova pagina nella finestra/frame (tramite link o tramite JS).

Forse per il tuo problema puoi ignorarlo, ma dato che non lo conosco, devo avvisarti.

Ciao
Michele