Я протестировал, и пример, размещенный на MDN, четко работает в Chrome.
<script>
window.onbeforeunload = function (e) {
e = e || window.event;
// For IE and Firefox prior to version 4
if (e) {
e.returnValue = 'Any string';
}
// For Safari
return 'Any string';
};
function formSubmit() {
window.onbeforeunload = null;
}
</script>
...
<form onsubmit="formSubmit()">...</form>
Таким образом открывается диалоговое окно, которое не будет блокироваться всплывающим окном.блокировщик, как это происходит от клика пользователя.