Я написал код, который должен запускать диалоговое окно подтверждения, когда пользователь покидает страницу. Если пользователь предоставляет подтверждение, должно появиться всплывающее окно; иначе это не должно. Однако бит onbeforeunload не срабатывает - я не понимаю, почему. Как это очевидно, я как бы новичок в JavaScript.проблема с onbeforeunload в сочетании с подтверждением
window.onbeforeunload = function() {
if (confirm("Would you like to take a short survey?")) {
w = 1000;
h = 1000;
var left = (screen.width/2)-(w/2);
var top = (screen.height/2)-(h/2);
window.open('http://www.google.com','toolbar=0,resizable = 1, scrollbars = 1, width='+w+',height='+h+', top ='+top+', left='+left);
}
}
Это не значит, что 'onbeforeunload' не был запущен, некоторые браузеры [блокировать все подсказки] (https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload#Notes) в 'onbeforeunload', поэтому в вашей функции нечего выполнять. – Teemu
@Teemu, что вы рекомендуете в качестве рабочего? –
Укажите ссылку на опрос на странице, если посетители захотят оставить страницу, пусть это сделает. – Teemu