js禁止打开控制台

该网页通过JavaScript实现对页面中图片的拖拽和保存操作的禁止,并阻止了右键菜单及F12开发者工具的使用。此外,还检测了是否开启移动端模式,并在开启时显示相应提示。代码主要涉及网页交互控制与用户体验限制。
摘要由CSDN通过智能技术生成

```javascript
<!DOCTYPE html>
<html lang="">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <div style="height: 1800px;">
        <img
            src="https://t8.baidu.com/it/u=3571592872,3353494284&fm=79&app=86&size=h300&n=0&g=4n&f=jpeg?sec=1601802328&t=569d9d4dcf3fee66f151db899b115254">
        <img
            src="https://t8.baidu.com/it/u=3571592872,3353494284&fm=79&app=86&size=h300&n=0&g=4n&f=jpeg?sec=1601802328&t=569d9d4dcf3fee66f151db899b115254">
        <img
            src="https://t8.baidu.com/it/u=3571592872,3353494284&fm=79&app=86&size=h300&n=0&g=4n&f=jpeg?sec=1601802328&t=569d9d4dcf3fee66f151db899b115254">
        <img
            src="https://t8.baidu.com/it/u=3571592872,3353494284&fm=79&app=86&size=h300&n=0&g=4n&f=jpeg?sec=1601802328&t=569d9d4dcf3fee66f151db899b115254">
    </div>
    <script>
        // 禁止保存,拖拽图片
        for (i in document.images) {
            document.images[i].ondragstart = function () { return false; };
        }
        // 禁止非开发人员打开控制台和查看元素,在href上添加?debug可打开
        var windowHref = window.location.href;
        //右键
        document.oncontextmenu = function (event) {
            var e = event || window.event || arguments.callee.caller.arguments[0];
            if (e.button == 2 && windowHref.indexOf('debug') == -1) {
                return false;
            } else {
                console.log(e.button)
            }
        };
        //f12 ctrl+shift+i ctrl+shift+j
        document.onkeydown = function (e) {
            var currKey = 0, evt = e || window.event;
            currKey = evt.keyCode || evt.which || evt.charCode;
            if ((currKey == 123 || currKey == 16 || currKey == 17 || currKey == 73 || currKey == 74) && windowHref.indexOf('debug') == -1) {
                return false
            } else {
                console.log(currKey)
            }
        }
        //如果从浏览器设置打开便清空body
        isConsole();
        window.onresize =function isConsoles(){isConsole()};
        function isConsole() {
            //页面可视宽高
            var contWidth = window.innerWidth;
            var contHeight = window.innerHeight;
            //浏览器宽高
            var outWidth = window.outerWidth;
            var outHeight = window.outerHeight;
            //打开移动端模式时
            var browser = {
                versions: function () {
                    var u = navigator.userAgent, app = navigator.appVersion;
                    return {  
                        mobile: !!u.match(/AppleWebKit.*Mobile.*/), 
                    };
                }(),
            }
            if ((outWidth - contWidth > 120 || outHeight - contHeight > 200) && windowHref.indexOf('debug') == -1) {
                document.body.innerHTML = '请关闭控制台后刷新页面';
            } else if(browser.versions.mobile) {
                document.body.innerHTML = '移动端模式不支持打开本页面' 
            }
        }
    </script>
</body>

</html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值