js禁用键盘回退网页功能,编辑区域的回退除外

<script type="text/javascript">    
    function banBackSpace(e) {
        var ev = e || window.event;
        var obj = ev.target || ev.srcElement;
        var t = obj.type || obj.getAttribute('type') || obj.localName;


        var vReadOnly = obj.getAttribute('readonly');
        var vEnabled = obj.getAttribute('enabled');
        var contenteditable = obj.getAttribute('contenteditable');


        vReadOnly = (vReadOnly == null) ? false : vReadOnly;
        vEnabled = (vEnabled == null) ? true : vEnabled;


        var flag1 = (ev.keyCode == 8 && (t == "password" || t == "text" || t == "textarea" || t == "div") && (contenteditable == true || vReadOnly == true || vEnabled != true)) ? true : false;
        var flag2 = (ev.keyCode == 8 && t != "password" && t != "text" && t != "textarea" && (t != "div" && contenteditable != true)) ? true : false;
        if (flag2) return false;
        if (flag1) return false;
    }
    document.onkeydown = banBackSpace;
</script>
原文地址:https://www.cnblogs.com/itfky/p/13730347.html