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内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • js实现右键菜单功能

    本文解决的问题:1.实现右键菜单功能代码:2.阻止默认事件的实际应用. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>右键菜单</title> <style type="text/css"> #menu { position: fixed; left:0; top:0;

  • ExtJs grid行 右键菜单的两种方法

    在这下边: 方法一 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="gridContextMenu.aspx.cs" Inherits="gridContextMenu" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &

  • JS实现禁止鼠标右键的功能

    遇到网页上有精美图片或者精彩文字想保存时,通常大家都是选中目标后按鼠标右键,在弹出菜单中选择"图片另存为"或"复制"来达到我们的目的.但是,目前有许多网页都屏蔽了鼠标右键,那么用js如何实现禁止鼠标右键的功能呢? 1.与禁止鼠标右键相关的JS说明 <script type="text/javascript"> document.oncontextmenu=new Function("event.returnValue=fal

  • JS input文本框禁用右键和复制粘贴功能的代码

    复制代码 代码如下: function click(e) { if (document.all) { if (event.button==1||event.button==2||event.button==3) { oncontextmenu='return false'; } } if (document.layers) { if (e.which == 3) { oncontextmenu='return false'; } } } if (document.layers) { docume

  • js键盘上下左右键怎么触发function(实例讲解)

    复制代码 代码如下: <script type="text/javascript"> function jumpPage() {     if (event.keyCode==37)//左 fun_a(); if (event.keyCode==38)//上 fun_b(); if (event.keyCode==39)//右 fun_c(); if (event.keyCode==40)//下 fun_d(); } function fun_a(){ window.ale

  • JavaScript鼠标事件,点击鼠标右键,弹出div的简单实例

    JavaScript鼠标事件,点击鼠标右键,弹出div的简单实例 document.oncontextmenu = function(){return false}; //禁止鼠标右键菜单显示 var res = document.getElementById('box'); //找到id为box的div document.body.onmouseup = function(e){ //在body里点击触发事件 if(e.button===2){ //如果button=1(鼠标左键),butto

  • 两种JS实现屏蔽鼠标右键的方法

    JS屏蔽鼠标右键的两种方法,比较常用的一个JS小功能,用上这个代码后,浏览者在访问你网页的时候就不能点击右键了,点了也不会弹出右键菜单,本功能最好不要用的太多哦,有时候用户会反感的. 代码如下: <html> <head> <title>屏蔽鼠标右键</title> </head> <body oncontextmenu=self.event.returnvalue=false> 第一种方法:在body标签里加上oncontextme

  • JS 获取鼠标左右键的键值方法

    function test() { alert(event.x+" "+event.y); alert(event.button); } /*右键菜单不显示*/ document.oncontextmenu=function() { return false; } /*document.onmousedown=function() { if(event.button==1) {alert("left")} if(event.button==2) {alert(&qu

  • js判断鼠标左、中、右键哪个被点击的方法

    本文实例讲述了js判断鼠标左.中.右键哪个被点击的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <html> <head> <title>js判断鼠标左.中.右键哪个被点击-柯乐义</title> <script type="text/javascript"> function whichButton(event) { var btnNum = event.button; if (btnNum==2)

  • js禁止页面刷新禁止用F5键刷新禁止右键的示例代码

    复制代码 代码如下: <script language="javascript"> //禁止用F5键 function document.onkeydown() { if ( event.keyCode==116) { event.keyCode = 0; event.cancelBubble = true; return false; } } //禁止右键弹出菜单 function document.oncontextmenu() { return false; } //

  • javascript实现禁止右键和F12查看源代码

    功能很简单,代码也很简洁,这里就不多废话了,直接奉上源码,需要的小伙伴直接带走. 复制代码 代码如下: function click(e) { if (document.all) { if (event.button==2||event.button==3) { alert("欢迎光临寒舍,有什么需要帮忙的话,请与站长联系!谢谢您的合作!!!"); oncontextmenu='return false'; } } if (document.layers) { if (e.which

  • js自定义鼠标右键的实现原理及源码

    今天来记录下js来自定义鼠标右键,同样先来分解下它的实现原理: 1.屏蔽右键默认事件:(一度我以为修改的就是默认事件) 2.对一个ul的隐藏:(这个我也曾迂腐的认为值得这样操作的都是div,汗) 3.对鼠标点击右键做出的响应,显示隐藏的ul: 4.鼠标重新点击后,ul重新被隐藏 这样来看的话,我们需要做的事情是不是就简单了很多,先上代码: html部分 <ul id="testRight" style="width: 100px;background-color: ye

  • js禁止页面复制功能禁用页面右键菜单示例代码

    <body oncontextmenu="return false">禁用网页右键菜单,但是仍然可以使用快捷键复制. js代码禁用复制功能: 复制代码 代码如下: <script type="text/javascript"> document.body.onselectstart=document.body.oncontextmenu=function(){ return false;} </script> 注意这段代码必须放在

  • 利用JS来控制键盘的上下左右键(示例代码)

    这是一个JS初级代码,想学JS的朋友,可以研究下或者扩展下,最好能用JS实现整个键盘的控制,那感觉就很有意思了. 具体代码如下: 复制代码 代码如下: <style>tr.highlight{background:#08246B;color:white;}</style><table border="1" width="70%" id="ice"><tr><td><input ty

随机推荐