Я хочу показывать сообщение всякий раз, когда вы покидаете страницу (не надоедливое предупреждение, просто какой-то html, говорящий вам ждать), думая об этом, я сталкиваюсь с некоторыми трудностями:
когда пользователь нажимает Стоп в
браузер, отменяющий навигацию
действие, я хотел бы, чтобы сообщение пошло
прочь.
всякий раз, когда нажимается какая-либо ссылка, должно появиться сообщение.
он не должен захватывать, когда по нажатой ссылке просто открывается другая вкладка (игнорировать цель _blank)
как говорится, запустить событие довольно просто, просто что-то вроде
$(document).unload(function()
{
// display message
});
проблема в том, что если пользователь отменяет, сообщение не исчезнет.
возможное исправление будет:
$(window).unload(function()
{
// display message
setTimeout(function()
{
// hide message
},5000);
});
но я хотел знать, есть ли более понятный способ, что только когда пользователь отменяет навигацию (или она перестает работать по любой другой причине), я могу скрыть сообщение.
Редактировать # 2:
Я только что заметил, что с приведенным выше кодом, в FF сообщение не отображается, пока страница не покинет страницу, и в этот момент, если пользователь нажимает Стоп, он получает около: blank. Если он нажимает Стоп до этого, то сообщение никогда не отображается. Что именно то, что я хотел.
В Internet Explorer сообщение никогда не отображается, я полагаю, это потому, что IE обрабатывает вещи по-разному. Интересно, что происходит в хроме?