网页禁止鼠标右键禁止全选复制粘贴有很多种JS方法实现,错新网也在前面做过类似的介绍。
今天错新网再次提及网页禁止鼠标右键禁止全选复制粘贴的话题,主要是想更细致的给大家分别介绍PC端的如何实现禁止复制网页内容的方法以及WAP端如何复制网页内容。
第一部分、PC端禁止复制网页内容
oncontextmenu事件禁用右键菜单,js代码:
document.oncontextmenu = function(){ event.returnValue = false;}// 或者直接返回整个事件document.oncontextmenu = function(){ return false;}
onselectstart事件禁用网页上选取的内容,js代码:
document.onselectstart = function(){ event.returnValue = false;}// 或者直接返回整个事件document.onselectstart = function(){ return false;}
oncopy事件禁用复制,js代码:
document.oncopy = function(){ event.returnValue = false;}// 或者直接返回整个事件document.oncopy = function(){ return false;}
以上三种事件,如果只想单纯的禁用鼠标右键,和复制粘贴,还可以将它们直接写到HTML中的body上面:
禁用鼠标事件,js代码:
document.onmousedown = function(e){ if ( e.which == 2 ){// 鼠标滚轮的按下,滚动不触发 return false; } if( e.which==3 ){// 鼠标右键 return false; }}
禁用键盘中的ctrl、alt、shift,js代码:
document.onkeydown = function(){ if( event.ctrlKey ){ return false; } if ( event.altKey ){ return false; } if ( event.shiftKey ){ return false; }}
有一个更简单的方法就是在
中加入如下的代码,这样鼠标的左右键都失效了: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()"
想要禁止网页另存为:
在
后面加入以下代码:禁止网页内容复制、粘贴:
在
中加入以下代码:第二部分、移动端禁止复制网页内容
web端,只需在css中加入代码就可以了:
*{ -webkit-touch-callout:none; /*系统默认菜单被禁用*/ -webkit-user-select:none; /*webkit浏览器*/ -khtml-user-select:none; /*早期浏览器*/ -moz-user-select:none;/*火狐*/ -ms-user-select:none; /*IE10*/ user-select:none; }
以上代码也包括了禁止了input的输入,所以要单加一段代码开放input的权限:
input { -webkit-user-select:auto; /*webkit浏览器*/}
另附上一个app h5长安拷贝的解决方法(没有验证过,仅供参考),屏蔽掉长按事件 因为webview长按时将会调用系统的复制控件:
mWebView.setOnLongClickListener(new OnLongClickListener() { @Override public boolean onLongClick(View v) { return true; } });
有兴趣的童鞋可以分别去尝试看下PC端和移动端禁止复制的代码是否可行有什么需要注意的欢迎反馈给我们。
以上就是网页禁止鼠标右键禁止全选复制粘贴的方法的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持错新网。
评论列表()