From 136ad14da2d52fa39dfd2837c3bd48c58f3f44d7 Mon Sep 17 00:00:00 2001 From: joyqi Date: Sat, 19 Oct 2013 20:02:48 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A6=BB=E5=BC=80=E6=A3=80=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- admin/write-js.php | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/admin/write-js.php b/admin/write-js.php index 379a7ccf..25c21a29 100644 --- a/admin/write-js.php +++ b/admin/write-js.php @@ -113,10 +113,11 @@ $(document).ready(function() { textarea.setSelection(offset, offset); }; + var form = $('form[name=write_post],form[name=write_page]'); + // 自动保存 autoSave): ?> var savedData = null, locked = false, - form = $('form[name=write_post],form[name=write_page]'), formAction = form.attr('action'), idInput = $('input[name=cid]'), autoSave = $('#auto-save-message'), @@ -127,12 +128,12 @@ $(document).ready(function() { setInterval(function () { var data = form.serialize(); - if (savedData != data) { - savedData = data; + if (savedData != data && !locked) { locked = true; autoSave.text(''); $.post(formAction + '?do=save', data, function (o) { + savedData = data; lastSaveTime = o.time; idInput.val(o.cid); autoSave.text('' + ' (' + o.time + ')').effect('highlight', 1000); @@ -159,6 +160,19 @@ $(document).ready(function() { }); + // 自动检测离开页 + var lastData = form.serialize(); + + $(window).bind('beforeunload', function () { + if (!!savedData) { + lastData = savedData; + } + + if (form.serialize() != lastData) { + return ''; + } + }); + // 高级选项控制 $('#advance-panel-btn').click(function() { $('#advance-panel').toggle();