Скрипт подтверждения закрытия страницы
Здравствуйте!
Есть скрипт:
<script>
function closeOrNot(e) {
if(!e) e = window.event;
e.cancelBubble = true;
e.returnValue = '';
if (e.stopPropagation) {
e.stopPropagation();
e.preventDefault();
}
}
window.onbeforeunload=closeOrNot;
</script>
Он дает сообщение с просьбой подтвердить закрытие вкладки, но также он выдает это сообщение когда переходишь на другую страницу. Помогите пожалуйста отключить запрос при переходе страницы... Нужно что-бы спрашивало только когда пользователь закрывает вкладку... |
Убери просто это подтверждение. Оно нужно для предотвращения потери введенных в формы данных, которое может произойти не только при уходе с сайта, но и переходе по страницам внутри сайта.
|
Нет, это подтверждение мне нужно. Но оно мешает, оно срабатывает когда пытаешься отправить форму, это очень не нужно...
|
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
//код не мой: http://mattweb.ru/moi-raboty/item/107-js-skript-podtverzhdenie-zakrytiya-stranitsy
function Unloader(){
var o = this;
this.unload = function(evt)
{
var message = "Вы уверены, что хотите закрыть страницу?";
if (typeof evt == "undefined") {
evt = window.event;
}
if (evt) {
evt.returnValue = message;
}
return message;
}
this.resetUnload = function()
{
$(window).off('beforeunload', o.unload);
setTimeout(function(){
$(window).on('beforeunload', o.unload);
}, 1000);
}
this.init = function()
{
$(window).on('beforeunload', o.unload);
$('a').on('click', o.resetUnload);
$(document).on('submit', 'form', o.resetUnload);
$(document).on('keydown', function(event){
if((event.ctrlKey && event.keyCode == 116) || event.keyCode == 116){
o.resetUnload();
}
});
}
this.init();
}
$(function(){
if(typeof window.obUnloader != 'object')
{
window.obUnloader = new Unloader();
}
})
</script>
<a href="#">Link</a>
<a href="#">Link</a>
<a href="#">Link</a>
Если щёлкать по странице (отправлять форму, F5), то ничего не происходит, а если закрыть, то произойдёт. |
Нет, не работает. Все равно не дает отправить форму, запрашивает подтверждение...
|
| Часовой пояс GMT +3, время: 16:04. |