Я хочу спросить пользователя, действительно ли он хочет покинуть страницу или нет, когда он нажимает кнопку закрытия, как это делается в документах Google. Как это сделать с помощью jquery?
JQuery предотвращает закрытие окна
Ответы (2)
Вы устанавливаете свойство onbeforeunload
окна в функцию.
В этом сообщении есть хороший пример как это сделать.
Или другой пример:
<script language="JavaScript">
var needToConfirm = true;
window.onbeforeunload = confirmExit;
function confirmExit()
{
if (needToConfirm)
//return message to display in dialog box;
}
</script>
...
<input type="Submit" value="Save" onclick="needToConfirm = false;" />
А чтобы установить needToConfirm
для своей формы, вы можете:
$(document).ready(function() {
$(':input', document.myForm).bind("change", function() { needToConfirm = true; }); // Prevent accidental navigation away
});
person
Prody
schedule
14.10.2009
Следующее сработало для меня;
$(window).unload(function() {
if(event.clientY < 0) {
//do whatever you want when closing the window..
}
});
person
Dilhan Jayathilaka
schedule
17.11.2011
Я думаю, что событие «перед выгрузкой» гораздо полезнее, чтобы спросить пользователя, хочет ли он сохранить свои изменения:
$(window).bind('beforeunload', function() { ... });
- person Alexis Wilke; 29.12.2013
Ах! Похоже, что за последние несколько лет это изменилось... так что в 2011 году, возможно, это все еще работало.
- person Alexis Wilke; 29.12.2013