Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 4025938
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 20, 20262026-05-20T10:54:31+00:00 2026-05-20T10:54:31+00:00

Try this in chrome versus firefox/IE: var cancelPressed = false; function redirect() { //window.location

  • 0

Try this in chrome versus firefox/IE:

    var cancelPressed = false;
    function redirect()  {
        //window.location = "http://www.google.com";
        alert('hi!');
    }

    window.onbeforeunload = function() {
        window.pressedTimer = setInterval("cancelPressed = true; clearInterval(window.pressedTimer);",3000);
        window.onbeforeunload = function() {
            if (!cancelPressed) {
                window.unloadTimer = setTimeout('redirect()',500);
                window.onbeforeunload = function() {clearTimeout(window.unloadTimer);};
                return "Redirecting..";
            } else {
                return 'wups';
            }
        };
        return 'first!';
    };

In FF/IE, refresh, hit cancel on the first prompt, wait about six seconds, and then try to refresh. The ‘wups’ will be triggered. However, in Chrome, you can wait as long as you want and cancelPressed will never be set to true.

What do you think?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-20T10:54:31+00:00Added an answer on May 20, 2026 at 10:54 am

    Which version of Chrome are you using? If I wait long enough, I also get the 'wups' message in Chrome. However, I noticed a subtle difference between Webkit browsers and other browsers. Consider the following code:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
        <head>
            <title>Javascript test</title>
            <script type="text/javascript" language="javascript">
                window.onload = function() {
                    document.getElementById("test").onclick = function() {
                        var startdate;
    
                        var interval = window.setInterval(function() {
                            // Get the difference (in milliseconds) between the current 
                            // date and the startdate.  
                            var diff = (new Date()).getTime() - startdate.getTime();
                            alert(diff);
    
                            window.clearInterval(interval);
                        }, 5000);
    
                        alert("Hello!");
                        startdate = new Date();
                    };
                };
            </script>
        </head>
        <body>
            <button id="test">Test button</button>
        </body>
    </html>
    

    In chrome and safari, the second alert will always display a number slightly greater than 5000, while in other browsers, you get a number between 0 and 5000.

    So what is happening? With setInterval(), the browser creates a timer that will invoke a javascript method every given interval. Javascript is single threaded, and an alert box will completely block the javascript execution. In chrome and safari, this means that the timer is also paused, while in other browsers the timer continues, but the javascript method invocation is suppressed until the alert box is closed.

    What has this to do with your example? It means that in chrome and webkit you always have to wait at least 3000 milliseconds before cancelPressed is set, while in others browser, this will happen somewhere between 0 and 3000 milliseconds.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I would try something like this but it isn't allowed. function GetDynamicModulesProperties() { var
I tried to do this: try{ (function($){ ... my plugin stuff })(jQuery); }catch(er){ alert(an
try this in chrome (ff,ie works ok): in msword or writer make a 3
This script I wrote works perfect on IE! It works on Chrome and FireFox
I have this code, window.onload = function(){ if($('div.colorPicker').length){ $(div.colorPicker).click(function(){ if($('.field_sku').length){ code = $(this).children('.tmpSKU').html(); if(!code
I try to write a dictionary extension for Google Chrome. Now, I want to
When I try this with a generic class where this.value is T: if (this.value.GetType()
When I try this code: a, b, c = (1, 2, 3) def test():
When I try this code: class MyStuff: def average(a, b, c): # Get the
Try loading this normal .jpg file in Internet Explorer 6.0. I get an error

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.