У меня есть этот код jQuery;Window beforeunload показывает два диалога
$(function() {
$(window).unbind("beforeunload");
$(window).bind("beforeunload", function() {
return confirm("Really?");
});
});
Когда я закрываю окно я получаю запрос на подтверждение и если я нажимаю «Отмена» Я получаю второе подтверждение, которое говорит;
"Вы действительно хотите перейти от этой страницы?"
"False"
"Нажмите OK для продолжения или Отмена, чтобы остаться на текущей странице."
Почему я получаю второй диалог и есть способ его удалить?
редактировать
изменили код, чтобы быть;
$(function() {
$(window).bind("beforeunload", function() {
return "slappy?";
});
});
Но сообщение с подтверждением не появляется. Событие увольняется, потому что я могу поставить там предупреждение и посмотреть предупреждение.
редактировать 2
изменили код для этого;
window.onbeforeunload = function() {
var txtBlog = $('#tbxNote').val();
if (txtBlog != "")
return "You have not saved your blog entry.";
}
это работает, но есть и другой текст выше и ниже моего сообщения;
"Вы действительно хотите перейти от этой страницы?"
«Вы не сохранили запись в блоге».
«Нажмите OK, чтобы продолжить, или Отмена, чтобы оставаться на текущей странице».
Это происходит на IE8. Не проверено FF – griegs
Вы можете сократить это, выполнив '$ (window) .unbind (« beforeunload »). Bind (« beforeunload »), ...', но это полностью зависит от вас. –
Re edit 2: Как указано в Cory ниже, невозможно изменить или удалить дополнительный текст - в противном случае вредоносные веб-сайты могут запутать людей, показывая обманчивое сообщение. –