No, such dialogs are always modal. Script execution in the window from
which these have been issued is halted until they have been closed.
A dangerous mistake I once had big troubles with. In Gecko-based
browsers including Firefox build-in dialogs are modal only withing the
current execution context. Because timed calls creating new contexts,
they are excluded from the lock. I have no idea why such "pseudo-
threading" was allowed for external scripts. Either indeed some
reasons for that or some initial bug which is too late to fix. No any
other known to me engine does that. For instance "enjoy" three alerts
displayed at once on Firefox:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en_US">
<head>
<meta http-equiv="Content-type"
content="text/html; charset=iso-8859-1">
<title>Demo</title>
<style type="text/css">
* {
box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
}
p {
font: 1em Georgia, serif;
}
</style>
<script type="text/javascript">
var counter = 0;
function demo() {
window.alert('Pseudo-thread #' + ++counter);
}
function init() {
window.setTimeout('demo()',500);
window.setTimeout('demo()',1000);
window.setTimeout('demo()',1500);
}
window.onload = init;
</script>
</head>
<body>
<p>No content.</p>
</body>
That is correct.