location.href does not work in chrome when called through the body/window unload event

Nived picture Nived · Aug 5, 2011 · Viewed 8k times · Source

Javascript - document.location or window.location or window.location.href or location.href does not work in Google Chrome 6 and 7(i didnt test lowers versions) when called from the window/body unload event. Both the ways seems to work fine with IE, Firefox and Safari browsers.

Through more testing i was able to see that this redirect actually works in chrome when done through a click event or any other. However when this is called in the body unload event. it does not work.

Sample Code:

<html>
    <script type="text/javascript">
        function check()
        {
            location.href="http://www.google.com";
        }
    </script>

    <body onunload="check()">

        <input type="button" onclick="check();" value="check">

    </body>
</html>

I am still trying to find a way to have this working in Chrome... Any help would be greatly appreciated.

Thanks, Nived

Answer

SugaryRohit picture SugaryRohit · May 13, 2013

try this out

setTimeout(function(){
    document.location.href = "page.html;"},500);