Можно ли открыть SINGLE custom всплывающее окно перед выгрузкой окна

0

Я хочу пригласить пользователя либо выйти, либо остаться на странице при входе в систему. Я попытался использовать следующий код, но не смог найти правильное решение:

window.onbeforeunload = function (e) {
          var e = e || window.event;

          // For IE and Firefox
          if (e) {
            e.returnValue = 'Any string';
          }
            alert(doLogout());
          // For Safari
          return 'Any string';
        };

        function doLogout(){
            var r=confirm("Press a button!");
            alert("confirmResponse: " + r);
            return r;
        }

Когда я попытался закрыть вкладку/окно, он просто попросит: "Эта страница просит вас подтвердить, что вы хотите уйти - данные, которые вы ввели, могут не быть сохранены". В моем коде сначала нужно подтвердить диалог, который не появляется.

Любые решения?

1 ответ

1

Он не будет предупреждать() из соображений безопасности. Эта тактика, позволяющая пользователю покинуть страницу, слишком часто использовалась "плохими парнями в Интернете", поэтому большинство браузеров заблокировали ее. Единственное, что вы можете сделать в onunload или onbeforeunload - передать строку, которая должна отображаться пользователю, прежде чем он onbeforeunload решение остаться или покинуть страницу. Вы должны поставить сообщение вместо 'Any string'. Этого должно быть достаточно для пользователя.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню