$(window).unload is not firing

Sergio Romero picture Sergio Romero · Feb 21, 2012 · Viewed 88.2k times · Source

I want to execute an action method when the user is abandoning a particular page using jQuery.

The page has the following code:

    <script type="text/javascript">

        $(window).unload(function () {
            alert("Handler for .unload() was called.");
        });

    </script>

When I navigate away from the page I never see the expected alert.

Answer

Darin Dimitrov picture Darin Dimitrov · Feb 21, 2012

Actually some browsers such as Google Chrome might block if you attempt to alert in a window unload. As a user I like this feature. Alerting every time you try to navigate away from a page sucks:

enter image description here

Replace the alert with a console.log or something else less intrusive to the user and the event will be happily called.

You might also want to checkout the onbeforeunload event.