前端知识(十三)——JavaScript监听按键,禁止F12,禁止右键,禁止保存网页【Ctrl+s】等操作

禁止右键

javascript 复制代码
document.oncontextmenu = new Function("event.returnValue=false;") //禁用右键

禁止按键

javascript 复制代码
// 监听按键
document.onkeydown = function () {
    // f12
    if (window.event && window.event.keyCode == 123) {
        alert("F12被禁用");
        event.keyCode = 0;
        event.returnValue = false;
    }
    // ctrl+shift+i
    if (window.event.ctrlKey && window.event.shiftKey && window.event.keyCode == 73) {
        alert("ctrl+shift+i被禁用");
        event.keyCode = 0;
        event.returnValue = false;
    }
    // ctrl+s
    if (window.event.ctrlKey && window.event.keyCode == 83) {
        alert("ctrl+s被禁用");
        event.keyCode = 0;
        event.returnValue = false;
    }
}

其他建码

禁止先打开控制台然后强行进入

javascript 复制代码
function a() {
	// 这里我做的是跳转首页,可以根据实际需要进行其他限制
    var domain = window.location.host;// 获取当前域名
    window.location.href = "http://" + domain;
    return false;
}
if (window.outerHeight - window.innerHeight > 150) {
    a()
}
if (window.outerWidth - window.innerWidth > 150) {
    a()
}
相关推荐
李永奉1 小时前
C语言-嵌入式开发C语言常用预处理指令合集
c语言·开发语言
东风破_1 小时前
React 受控组件与非受控组件:从一个输入框讲清表单数据流
前端
尤乐娃子1 小时前
进入大厂(厂子大)实习Day12
前端·笔记·实习
程序员爱钓鱼1 小时前
Rust Copy详解:隐式复制与轻量数据类型
前端·后端·rust
上海安当技术2 小时前
敏感数据怎么防拖库?信封加密(DEK+KEK 二层密钥)架构设计与 Java 实战
java·开发语言·python
我是唐青枫2 小时前
Java JCommander 实战详解:用注解解析命令行参数
java·开发语言
大鹏说大话2 小时前
C++ 内存布局详解:类、虚函数、虚表底层原理
java·开发语言
键盘会跳舞2 小时前
C++:容器适配器 queue 的源码级拆解
开发语言·c++·queue
四六的六3 小时前
端侧模型多端部署实战:从格式转换到灰度发布,Web 和移动端统一部署流水线
前端·人工智能·大模型·ai编程·ai模型·ai产品·端侧ai
Loge编程生活3 小时前
打卡信奥刷题(3449)用C++实现信奥题 P10429 [蓝桥杯 2024 省 B] 拔河
开发语言·数据结构·c++·算法·青少年编程