@realfront

Javascript событие закрытия окна браузера? Как обработать?

Здравствуйте! Как правильно обработать событие закрытия окна браузера? То есть, когда человек нажимает крестик на вкладке. Проблема в том, что обрабатывая это событие выводятся также модальные окна, если человек нажимает на внутреннюю ссылку сайта. А нужно, чтобы событие запускало функцию только при закрытии вкладки.
Я использовал window.onbeforeunload = function(){'код'}.
  • Вопрос задан
  • 4243 просмотра
Пригласить эксперта
Ответы на вопрос 1
@HowardRoark
Full stack developer
Определить, закрылась ли вкладка или это был переход по ссылке невозможно
Только вручную:
var inFormOrLink;
$('a').on('click', function() { inFormOrLink = true; });
$('form').on('submit', function() { inFormOrLink = true; });

$(window).on("beforeunload", function() { 
    return inFormOrLink ? "Do you really want to close?" : null; 
})
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы