浏览器关闭时弹出提示事件onbeforeunload

有时候在做数据编辑的时候,为了友好提示用户不小心关闭浏览器时,提醒用户是否已经保存数据,可以用onbeforeunload来处理;
兼容谷歌,ie,火狐兼容性不好。
代码如下:

  var UnloadConfirm = {};
    UnloadConfirm.MSG_UNLOAD = "数据尚未保存,离开后可能会导致数据丢失\n\n您确定要离开吗?";
    UnloadConfirm.set = function(a) {
        window.onbeforeunload = function(b) {
            b = b || window.event;
            b.returnValue = a;
            return a
        }
    };
    UnloadConfirm.clear = function() {
        fckDraft.delDraftById();
        window.onbeforeunload = function() {}
    };
    UnloadConfirm.set(UnloadConfirm.MSG_UNLOAD);

当需要取消这个事件的时候只需要执行以下代码:

window.onbeforeunload = null;

你可能感兴趣的:(JavaScript)