js 禁止打开控制台无限debugger处理


var div = document.createElement('div');
var loop = setInterval(function () {
    console.log(div);
    console.clear();
}, 200);

Object.defineProperty(div, "id", {
    get: function () {
        clearInterval(loop);
        //alert("禁止非法调试!请关闭开发者工具!");
        //location.href = "/WebPages/Home/AttackError";
        alert("禁止非法调试!请关闭开发者工具!")
        setInterval(breakDebugger, 100);//防止其他外部调试
    }
});

function checkDebugger() {
    var d = new Date();
    debugger;
    var dur = Date.now() - d;
    if (dur < 5) {
        return false;
    } else {
        //location.href = "/WebPages/Home/AttackError";
        alert("禁止非法调试!请关闭开发者工具!")
        return true;
    }
}
function breakDebugger() { if (checkDebugger()) { breakDebugger(); } }

//其他扩展:

//禁止右键
$(document).bind("contextmenu", function () { return false; });

屏蔽f12, ctrl
//$(document).bind("keydown ", function (e) {
//    if (e.keyCode === 123 || e.keyCode === 17) { //屏蔽F12 ctrl
//        e.preventDefault();
//        return false;
//    }
//    return true;
//});


var preventCtrl = function (e) {

    if (e.keyCode === 123) { //屏蔽F12 
        e.preventDefault();
        return false;
    } else if (e.keyCode === 17) { //ctrl
        console.log("prevent keycode s");
        document.onkeydown = preventS;
        return false;
    }
    return true;
}

var preventS = function (e) {
    if (e.keyCode === 123 || e.keyCode === 83) { //屏蔽F12 ctrl
        e.preventDefault();
        return false;
    }
    return true;
}

var nopreventS = function (e) {
    if (e.keyCode === 17) {
        console.log("no prevent keycode s");
        document.onkeydown = preventCtrl;
    }

}

//屏蔽f12, ctrl
document.onkeydown = preventCtrl;
document.onkeyup = nopreventS;

//禁止复制
$(document).bind("selectstart", function (e) { e.preventDefault(); });



版权声明:本文为weixin_47338877原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。