WEB 项目如何禁用 F12 等功能

一、前言

作为Web项目开发的程序员,我们调试Web前端代码的时候离不开的就是浏览器的F12功能,他是开发者的利器,但是项目上线后,基于安全方面的考虑,往往很多平台会想办法禁用F12功能,哪怕不能绝对,也想提高别人研究的门槛。本文将通过几种能打开F12功能的方式,逐一讲解。

二、禁用右键

打开F12的方式可以通过右键的方式打开,那么想禁用F12的功能,禁用右键就必须要实现的。

bash 复制代码
document.addEventListener('contextmenu',function(event){
    event = window.event || event
    event.returnValue = false
})

三、禁用 F12 按键

bash 复制代码
document.addEventListener('keydown',function(event){
    event = window.event || event
    if(window.event && window.event.keyCode == 123) {
        // event.keyCode =0;
        event.returnValue = false
    }
})

四、禁止任何键盘敲击事件

防止 F12 和 shift+ctrl+i 调起开发者工具

bash 复制代码
window.onkeydown = window.onkeyup = window.onkeypress = function () {
    window.event.returnValue = false;
    return false;
}

五、监控页面宽高

如果用户在工具栏调起开发者工具,那么判断浏览器的可视高度和可视宽度是否有改变,如有改变则关闭本页面

bash 复制代码
var h = window.innerHeight,w=window.innerWidth;
window.onresize = function () {
    if (h!= window.innerHeight||w!=window.innerWidth){
        window.close();
        window.location = "about:blank";
    }
}

六、写在最后

关于禁用 F12 我相信远不止本文上面的几个方法,欢迎大家在下方留言你们是怎么做的。

相关推荐
红尘散仙7 小时前
谁说终端只能敲键盘?我用 Rust 给小说阅读器加上了鼠标
前端·后端·rust
陈随易8 小时前
C++26 草案被否,二十八年来头一回
前端·后端·程序员
ZhengEnCi8 小时前
Agent 工具怎么折叠海量输出才「爽」:Trae、Claude Code 的渐进式披露设计原理
前端·agent
IT_陈寒12 小时前
Redis内存暴涨,没想到是AOF重写捣的鬼
前端·人工智能·后端
ikoala12 小时前
让 Codex 自己查账:一个省 token 的小技巧
前端·后端·ai编程
ikoala12 小时前
AI 写页面像说明书,修 Bug 像贴膏药?把这两句话写进 AGENTS.md
前端·javascript·ai编程
去伪存真14 小时前
AI Agent Harness 深度测评与技术选型实战
前端·agent
isboyjc16 小时前
Lomo Agent:面向创作型、持续协作 Agent 的架构设计与工程实践
人工智能·架构·agent
FRing0317 小时前
vue2干货总结7(自定义指令、插槽、单页应用程序、路由的使用(VueRouter))
开发语言·前端·vue.js·vue2
聪明的笨猪猪18 小时前
AI应用架构选型:架构师的核心决策困境与权衡
经验分享·面试·架构