JS-скрипт для подтверждения закрытия страницы

Если установить обработчик события beforeunload, который возвращает true или другое значение:

window.onbeforeunload = function() {
	return true;
};
JS

То при попытки пользователем перезагрузить страницу или закрыть окно или вкладку браузера, будет выводится сообщение:

Ранее можно было прописать свой текст, но из-за злоупотреблений эту возможность убрали.

Грамотное использование этого события – избежать случайного закрытия окна если пользователь начал заполнять форму. Сделать это можно на JQuery, повесив событие onchange на все поля формы и удаление onbeforeunload при её отправки.

set_onbeforeunload = function(){
	return true;
};

$(document).ready(function(){
	$(document).on('input', ':input', function() {
		window.onbeforeunload = set_onbeforeunload;
	});
	
	$('form').submit(function(){
		window.onbeforeunload = null;
	});
});
JS

Пример работы

01.10.2019 59

Поделится

Темы

jQuery JS Формы

Другие публикации

AJAX позволяет отправить и получить данные без перезагрузки страницы. Например, делать проверку форм, подгружать...
23.12.2016 5200
Сборник jQuery приемов с textarea - получить содержимое, вставить значение, подсчет количества символов и строк и т.д.
04.03.2018 9207
Виджет на JQuery и AJAX, который покажет результаты поиска непосредственно при вводе в текстовое поле.
25.09.2019 122
Для модальных окон есть множество плагинов такие, как fancybox, Twitter Bootstrap и т.д. Но бывают случаи когда нет...
12.12.2018 4634
Отследить появление блока при скроллинге можно с помощью события onscroll, вычисляя его положение методами jquery...
16.02.2019 1553
Изображения нужно сжимать для ускорения скорости загрузки сайта, но как это сделать? На многих хостингах нет...
26.10.2018 2094