Thành viên:Mxn/warnclosing.js

/* Warn when closing an edited page */// Generalized version of hookEvent() in wikibits.jsvar hookEvent = function (hookTarget, hookName, hookFunct) {    if (!hookTarget) return;    if (hookTarget.addEventListener) {        hookTarget.addEventListener(hookName, hookFunct, false);    }    else if (hookTarget.attachEvent) {        hookTarget.attachEvent("on" + hookName, hookFunct);    }}// Record original text and attach onsubmit event to the formeditFormSubmitting = false;$(function () {    var editForm = document.getElementById("editform");    var editBox = document.getElementById("wpTextbox1");    if (!editForm || !editBox) return;        wpTextbox1_orig = editBox.value;    hookEvent(editForm, "submit", function () {        editFormSubmitting = true;    });});// Warn if text has changed or changes are being previewedhookEvent(window, "beforeunload", function (e) {    e = (window.event) ? window.event : e;    var editBox = document.getElementById("wpTextbox1");    if (editFormSubmitting || !editBox || !wpTextbox1_orig) return;        var preview = document.getElementById("wikiPreview");    var previewNote = getElementsByClassName(preview, "div", "previewnote");    var isPreview = previewNote && previewNote.length > 0;    var textChanged = editBox.value != wpTextbox1_orig;    if (isPreview || textChanged) {        return e.returnValue = "Tất cả các sửa đổi sẽ bị hủy vì bạn chưa lưu trang.";    }});