diff --git a/assets/js/admin-tickets.js b/assets/js/admin-tickets.js index 449c0cb4..4612944f 100644 --- a/assets/js/admin-tickets.js +++ b/assets/js/admin-tickets.js @@ -27,6 +27,7 @@ var readController = null; var generation = 0; var pointerOutside = false; + var feedbackTimer = 0; function values(form) { var result = {}; @@ -94,12 +95,16 @@ container.querySelectorAll('[data-aksrt-ticket-editor]').forEach(counter); } + /** 成功与可忽略的错误提示自动消失;加载/保存中与需重试的提示保留到状态变化。 */ function feedback(dialog, message, error, retry) { var box = dialog.querySelector('[data-aksrt-ticket-feedback]'); + clearTimeout(feedbackTimer); box.hidden = !message; box.classList.toggle('is-error', !!error); box.querySelector('p').textContent = message || ''; box.querySelector('[data-aksrt-ticket-retry]').hidden = !retry; + if (!message || retry || message === strings.loading || message === strings.saving) return; + feedbackTimer = setTimeout(function () { box.hidden = true; }, error ? 6000 : 3000); } function busy(value) {