Detect if an alert or confirm is displayed on a page

Uggers2k picture Uggers2k · Feb 1, 2011 · Viewed 36.3k times · Source

Is there a way using JavaScript or jQuery to detect if a confirm or alert box is being displayed?

Answer

user113716 picture user113716 · Feb 1, 2011

If you wanted to run some code when an alert() fires, you could try something like this:

I've only tested in Chrome, so I'm not sure about browser support.

Example: http://jsfiddle.net/Q785x/1/

(function() {
    var _old_alert = window.alert;
    window.alert = function() {
                     // run some code when the alert pops up
        document.body.innerHTML += "<br>alerting";
        _old_alert.apply(window,arguments);
                     // run some code after the alert
        document.body.innerHTML += "<br>done alerting<br>";
    };
})();

alert('hey');
alert('you');
alert('there');

Of course this only lets you run code before and after an alert. As @kander noted, javascript execution is halted while the alert is displayed.