Я хочу, чтобы показать сообщение, когда вы уезжаете страницу (не раздражает предупреждения, только некоторые HTML, говоря вам ждать), думая об этом, я столкнулся с определенными трудностями:javascript location.href onchange прослушиватель событий?
, когда пользователь нажмите Остановить в браузере , отменив навигацию , я хочу отправить сообщение .
всякий раз, когда нажимается какая-либо ссылка, должно появиться сообщение.
он не должен захватывать, когда щелкнул ссылку просто открывает другую вкладку (игнорировать _blank цель)
, что, как говорится, выпустив событие довольно просто, только с чем-то вроде
$(document).unload(function()
{
// display message
});
проблема в том, что если пользователь отменяет, сообщение не исчезнет.
возможное исправление будет:
$(window).unload(function()
{
// display message
setTimeout(function()
{
// hide message
},5000);
});
, но я хотел бы знать, если бы был чище путем, что только тогда, когда пользователь отменяет навигацию (или она не по какой-либо другой причине), я могу скрыть сообщение.
Edit # 2:
Я просто заметил, что с указанным кодом, в FF сообщения не отображаются, пока страница не остались, в какой момент, если пользователь нажимает Стоп, он получит около: пусто , Если он нажимает Stop перед этим, сообщение никогда не отображается. Это именно то, что я хотел.
В Internet explorer сообщение никогда не отображается, я предполагаю, что это потому, что IE обрабатывает вещи по-разному. Интересно, что происходит в хроме?
hmmm ... Мне это нравится, хотя IE никогда не отображает сообщение. Я предполагаю, что функция $ (window) .unload никогда не срабатывает в IE? – bevacqua
$ (window) .unload будет срабатывать, если вы загрузили jQuery, а страница фактически выгрузится, так как на другой странице загружается эта страница. Я скопировал $ (window) .unload из вопроса, что было неправильным событием для использования. Я изменил код выше, и теперь он должен работать. – Eric