views:

707

answers:

2

Can I rely on the window unload event to be triggered when a user closes a tab/window/browser?

Edit:

Found a list of what triggers the unload event in IE. http://msdn.microsoft.com/en-us/library/ms536973%28VS.85%29.aspx

I would like to know in which edge cases the unload event won't be triggered.

+3  A: 

Not in all circumstances no. The browser could crash etc. keeping the event from firing. The user could also use add-ons like Grease Monkey to prevent the event from firing also.

Kevin
That's why I said "when a user closes". Browser crashes, power outages,etc. are a different case.
bhseo
Well a user can still close the browser by using task kill etc.
Kevin
If you are relying on it to fire to clean something up, you can't.
Kevin
Fair enough. I was also just thinking about the user shutting down the OS, or going to stand-by or hibernating.
bhseo
+3  A: 

You will likely want to use the "onbeforeunload" event too, it provides more control than the "onunload" event.

That said, be aware that: Opera doesn’t fire the unload event when the browser refreshes the page, or uses the back/forward buttons to browse off of the page. What’s worse, Opera never fires the onbeforeunload event. Thus if you are supporting Opera - be aware of these issues.

scunliffe
Thanks for the Opera info.
bhseo