У меня есть onberforeunload
метод, который правильно предупреждая пользователя, когда они пытаются закрыть вкладку или браузер, используя происходит некорректно код:выход Page гиперссылкой не поймают по onberforeunload
window.onbeforeunload = function(event) {
event.returnValue = 'Are you sure you want to leave/';
console.log(event.returnValue);
};
Я обнаружил, что onberforeunload
не вызывается, когда я нажимаю гиперссылку на странице. Предупреждающее сообщение, которое я хочу отобразить, не отображается, и страница загружается свободно.
Я искал множество способов создания всплывающего окна, когда была выбрана гиперссылка, но все они имеют дело с одной или группами гиперссылок в тегах div. Я хочу, чтобы всплывающее окно отображалось, если выбрана какая-либо гиперссылка.
Почему не onbeforeunload
улавливать выход страницы через гиперссылку? Является ли мое понимание onbeforeunload
неправильным, что он должен ловить гиперссылки?
UPDATE
Я обновил код на следующее:
window.onbeforeunload = closeIT;
function closeIT() {
return 'here';
if(searchOnGoing){
return 'Ifs you leave the Youtube History page now the application will not finish';
}
};
Он до сих пор не работает для гиперссылок и работы для браузера и закрытия вкладки. Я запускаю это как часть скрипта содержимого в chrome-расширении, которое вставляет скрипт контента на страницу. Это повлияет на это?
У меня также есть onunload следующее, мне интересно, это также повлияет на него?
window.onunload = function(event){
//Do something
}
Он должен работать для гиперссылок, а также (см [этот пример] (http://samples.msdn.microsoft.com/workshop/samples/author/dhtml/refs/onbeforeunload.htm)). Я думаю, вам просто нужно изменить свой 'event.returnValue ...' на традиционный оператор 'return' (и переместить его после журнала). – Quantastical