2018-12-16 | js鼠标事件 | UNLOCK

鼠标禁止事件

HTML,JS禁止鼠标右键、禁止全选、复制、粘贴的方法

1、禁止鼠标右键、禁止全选、复制、粘贴;

(1) oncontextmenu事件禁用右键菜单;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
document.oncontextmenu = function(){
event.returnValue = false;
}

// 或者直接返回整个事件
document.oncontextmenu = function(){
return false;
}

onselectstart事件禁用网页上选取的内容;
js代码:

document.onselectstart = function(){
event.returnValue = false;
}
// 或者直接返回整个事件
document.onselectstart = function(){
return false;
}
(2) oncopy事件禁用复制;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
document.oncopy = function(){
event.returnValue = false;
}
// 或者直接返回整个事件
document.oncopy = function(){
return false;
}
以上三种事件,如果只想单纯的禁用鼠标右键,和复制粘贴,还可以将它们直接写到HTML中的body上面;

<body oncontextmenu = "return false" ></body>

<body onselectstart = "return false" ></body>

<body oncopy = "return false" ></body>

2、禁用鼠标事件

1
2
3
4
5
6
7
8
document.onmousedown = function(e){
if ( e.which == 2 ){// 鼠标滚轮的按下,滚动不触发
return false;
}
if( e.which==3 ){// 鼠标右键
return false;
}
}

3、禁用键盘中的ctrl、alt、shift

1
2
3
4
5
6
7
8
9
10
11
document.onkeydown = function(){
if( event.ctrlKey ){
return false;
}
if ( event.altKey ){
return false;
}
if ( event.shiftKey ){
return false;
}
}
1
2
3
4
5
6
7
8
关键就在  
  oncontextmenu='return false'
  ondragstart='return false'
  onselectstart ='return false'
  onselect='document.selection.empty()'
  oncopy='document.selection.empty()'
  onbeforecopy='return false'
  onmouseup='document.selection.empty()'

4、一个更简单的方法就是在中加入如下的代码,这样鼠标的左右键都失效了.

1
2
3
4
5
6
topmargin="0" 
oncontextmenu="return false" ondragstart="return false" onselectstart
="return false" onselect="document.selection.empty()"
oncopy="document.selection.empty()" onbeforecopy="return false"
onmouseup="document.selection.empty()"
`

5、禁止网页另存为:在后面加入以下代码:

1
2
3
<noscript> 
<iframe src="*.htm"></iframe>
</noscript>

6、禁止网页内容复制.粘贴:在中加入以下代码:

1
2
3
4
5
6
<body
onmousemove=/HideMenu()/ oncontextmenu="return false"
ondragstart="return false" onselectstart ="return false"
onselect="document.selection.empty()"
oncopy="document.selection.empty()" onbeforecopy="return false"
onmouseup="document.selection.empty()" />

评论加载中