JS禁用右键、禁用Ctrl+u、禁用Ctrl+s、禁用F12的实现代码
先来两个简单粗暴的
第一种方法:
var arr = [123, 17, 18]; document.oncontextmenu = new Function("event.returnValue=false;"),//禁用右键 document.onselectstart = new Function("event.returnValue=false;"),//禁用选中 window.onkeydown = function (e) { var code = e.keyCode; if (arr.indexOf(code) > -1) { console.log("中招了", code); e.preventDefault(); } }, window.oncontextmenu = function (e) { e.preventDefault(); }
第二种方法:
var arr = [123, 17, 18]; document.oncontextmenu = new Function("event.returnValue=false;"),//禁用右键 window.onkeydown = function (e) { var keyCode = e.keyCode || e.which || e.charCode; var ctrlKey = e.ctrlKey || e.metaKey; console.log(keyCode + "--" + keyCode); if (ctrlKey && keyCode == 85) { console.log("ctrl+u"); e.preventDefault(); } if (arr.indexOf(keyCode) > -1) { console.log("其他"); e.preventDefault(); } //e.preventDefault(); //return false; }
网页如何禁止鼠标右键和F12,键盘另存为、粘贴、复制事件
最近做的商用后台项目涉及到前端加密技术,为了保证前端页面展示的数据不被窃取,所以在js上做了一些处理,这些处理并不能完全杜绝有心之人窃取数据,只是加大他们操作的难度而已。
1.禁止浏览器右键事件。使用浏览器右键可以将网页保存下来,或者审查网页源代码,这是我们想避免的(当然,仍然可以通过浏览器右上角的工具栏打开开发者工具,这里可以判断下鼠标的光标位置,如果光标移动到导航栏及页面body之外的地方,我们可以选择把页面展示的元素清空,这样在控制台看见的源代码也没有展示出来的数据了)。
js实现:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>禁止鼠标右键事件</title> </head> <body> <p>这里是一些内容,展示禁止鼠标右键事件 </p> </body> <script> document.oncontextmenu = function(){ return false; } </script> </html>
jquery实现:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>禁止鼠标右键事件</title> </head> <body> <p>这里是一些内容,展示禁止鼠标右键事件 </p> </body> <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script> <script> $(function(){ $(document).contextmenu(function() { return false }) }); </script> </html>
2.禁止F12事件,键盘的选择粘贴复制事件
jquery实现:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>禁止键盘粘贴复制</title> </head> <body> <p>这里是一些内容 </p> </body> <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script> <script> function forbidKeyboard() { $(document).keydown(function(e) { /*9:Tab键, 17:Control键, 18:Alt键, 123:F12键, 83:S键*/ var keyboardCode = [9, 17, 18, 123]; for (i in keyboardCode) { if (keyboardCode[i] == e.keyCode) { return false; } } if ((e.keyCode == 83) && (e.ctrlKey || e.metaKey)) { return false; } }); /*禁止文本选择功能*/ $(document).bind("selectstart",function(){return false;}); } $(function(){ forbidKeyboard(); }); </script> </html>
js实现:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>js禁止f12事件</title> <script> window.onload = function(){ document.onkeydown = function(event){ var ev = event || window.event || arguments.callee.caller.arguments[0]; //123 代表F12键 if(event.keyCode = 123){ return false; } } } </script> </head> <body> <p>这里是一些内容</p> </body> </html>
js屏蔽chrome F12后页面自动跳转
function a() { window.location.href = "https://www.jb51.net/"; return false } if (top.window.outerHeight - top.window.innerHeight > 150) { a() } if (top.window.outerWidth - top.window.innerWidth > 150) { a() } }; r(document).keydown(function() { return y(arguments[0]) }); function y(r) { var o; if (window.event) { o = r.keyCode } else if (r.which) { o = r.which } if (o == 123) { e.larryCmsError("说好的demo版本只演示 不允许F12哦!", e.larryCore.tit); return false } if (r.ctrlKey) { if (r.shiftKey && o == 73) { e.larryCmsError("说好的demo版本只演示 不允许ctrl+shift+I哦!", e.larryCore.tit); return false } } if (r.ctrlKey && o == 83) { e.larryCmsError("说好的demo版本只演示 不允许ctrl+s保存哦!", e.larryCore.tit); return false } }
具体就是页面加载后执行s();判断是不是有调试工具
和按f12后触发window.onresize判断,和按键key判断
到此这篇关于JS禁用右键、禁用Ctrl+u、禁用Ctrl+s、禁用F12的实现代码的文章就介绍到这了,更多相关JS禁用右键Ctrl内容请搜索猪先飞以前的文章或继续浏览下面的相关文章希望大家以后多多支持猪先飞!
相关文章
- 有时候我们需要屏蔽客户端的F12,以防菜鸟也可以随意修改我们的代码,也处于源码的保护等操作,这里就为大家分享一下常见的代码...2020-10-03
- 下面小编就为大家带来一篇C#获取鼠标在listview右键点击单元格的内容方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
- 通过js来检测开发者工具是否打开,防止别人恶意调试我们的代码,最近我发现还是有蛮多人去浏览那篇文章,所以这里再放出一段代码,算是个升级版吧...2020-10-03
- 这篇文章主要介绍了使用OpenLayers3 添加地图鼠标右键菜单的相关资料,需要的朋友可以参考下...2016-01-02
C# 实现dataGridView选中一行右键出现菜单的示例代码
这篇文章主要介绍了C# 实现dataGridView选中一行右键出现菜单,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-11-03IntelliJ IDEA右键文件夹没有Java Class文件的原因及解决方法
这篇文章主要介绍了IntelliJ IDEA右键文件夹没有Java Class文件的原因及解决方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-09-02- 这篇文章主要介绍了VC++ 中ListCtrl经验总结的相关资料,需要的朋友可以参考下...2020-04-25
- WinForm程序中表单的列可自定义显示及隐藏,是一种常见的功能,对于用户体验来说是非常好的。这篇文章主要介绍了DataGridView右键菜单自定义显示及隐藏列功能,需要的朋友可以参考下...2021-09-22
- 本人一直喜欢左手使用鼠标,偶尔同事会临时操作一下,因为他的习惯是右手,还得在控制面板里进行更改,太麻烦了所以就编写一个控制台程序,双击一下即可切换左右键,热爱懒人的你可不要错过了哈...2020-06-25
- 这篇文章主要介绍了MFC控件中CListCtrl的应用方法,包括了针对表格的一些操作,是MFC中比较重要的一个控件类,需要的朋友可以参考下...2020-04-25
- 这篇文章主要介绍了基于JavaScript实现智能右键菜单的相关资料,需要的朋友可以参考下...2016-03-03
- 今天用到spreadsheetGear插件,然后右键有插件自己的菜单。都是英文的,而且还能打开新的窗体。嵌到程序里面,不太合适,所以着手屏蔽...2020-06-25
解决python3.6 右键没有 Edit with IDLE的问题
这篇文章主要介绍了解决python3.6 右键没有 Edit with IDLE的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-13JS禁用右键、禁用Ctrl+u、禁用Ctrl+s、禁用F12的实现代码
最近项目需要屏蔽客户端的一些操作,加大查看源码等难度,特整理一下这个js,也防止客户端用户误操作,破解方放也很简单这里就不多说了...2020-10-02- 这篇文章主要介绍了C++ 中CListCtrl的每个项都显示不同的提示信息的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下...2020-04-25
- 本文给大家汇总了3个版本的C++实现添加桌面右键新建菜单的代码,陆陆续续写的,有需要的小伙伴可以根据自己的需求来选择...2020-04-25
C++ 关于 CMFCPropertyGridCtrl 的使用方法
这篇文章主要介绍了C++ 关于 CMFCPropertyGridCtrl 的使用方法的相关资料,需要的朋友可以参考下...2020-04-25