Мені потрібно попередити користувачів про незбережені зміни, перш ніж вони залишають сторінку (досить поширена проблема).
window.onbeforeunload=handler
Це працює, але воно відкриває діалог за замовчуванням із дратуючим стандартним повідомленням, яке перекриває мій власний текст. Мені потрібно або повністю замінити стандартне повідомлення, щоб текст міг бути зрозумілим, або (ще краще) замінити весь діалог модальним діалогом за допомогою jQuery.
Поки що я провалився, і я не знайшов нікого іншого, хто, здається, має відповідь. Чи можливо це навіть?
Javascript на моїй сторінці:
<script type="text/javascript">
window.onbeforeunload=closeIt;
</script>
Функція closeIt ():
function closeIt()
{
if (changes == "true" || files == "true")
{
return "Here you can append a custom message to the default dialog.";
}
}
Використовуючи jQuery та jqModal, я спробував такі речі (за допомогою спеціального діалогового вікна підтвердження):
$(window).beforeunload(function() {
confirm('new message: ' + this.href + ' !', this.href);
return false;
});
що також не працює - я, здається, не можу прив’язатись до події перед завантаженням.