前端知识(十三)——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()
}
相关推荐
Penge6669 分钟前
《Go 后端开发者学 TypeScript:extends关键字》
javascript
张张123y16 分钟前
DSH 插件调试避坑:client.js 设置面板、热重载与高频报错排查表
开发语言·javascript·人工智能·开源·ecmascript·后端开发·ai agent
去伪存真1 小时前
AI Agent Harness 深度测评与技术选型实战
前端·agent
冻柠檬飞冰走茶3 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
FRing033 小时前
vue2干货总结7(自定义指令、插槽、单页应用程序、路由的使用(VueRouter))
开发语言·前端·vue.js·vue2
雪落漂泊3 小时前
C++算法 二分查找篇(上)
开发语言·c++·算法
波力海苔夹心脆6755 小时前
C# WPF 资源字典详解:ResourceDictionary、MergedDictionaries 与自定义控件案例
开发语言·c#·wpf·入门教程·resource·资源字典
不会算法的笨小孩5 小时前
异常的使用以及会出现的问题
开发语言·c++·c++11·异常
Penge6665 小时前
《Go 后端开发者学 TypeScript:typescript 类型断言》
javascript
Penge6665 小时前
《Go 后端开发者学 TypeScript:Symbol》
javascript