屏蔽右键代码(防止网页被恶意复制)

技巧 7年前 (2013-07-16) 13,036 人围观 屏蔽右键代码(防止网页被恶意复制)已关闭评论

今天做了一个页面,想禁止一下右键,结果不知道怎么回事,试了好几个方法都不成~无奈一个一个试了一遍总算成功了~于是这里也放出一下禁止右键的方法

 

推荐:
在网页脚本中(header.php)插入以下代码:
<body oncontextmenu='return false' ondragstart='return false' onselectstart ='return false' onselect='document.selection.empty()' oncopy='document.selection.empty()' onbeforecopy='return false' onmouseup='document.selection.empty()'>
上面代码的意思是当鼠标选中文字时为空
===========================
在head.aphp中的
<head>语句下输入
<body onselectstart="return false;" oncontextmenu="return false;" >

程序代码
在系统首页文件(index.php)和日志文件最底下加入如下代码即可.这两个文件都在根目录下.

<noscript>
<iframe scr="*.htm"></iframe>
</noscript>
<script language="JavaScript">
document.oncontextmenu=new Function("event.returnValue=false;");
document.onselectstart=new Function("event.returnValue=false;");
</script>

优点是简单易行,但保护不够,很容易破解。

搜索找到的一些办法:
程序代码
第一种 禁止右键、Ctrl键和复制功能的JS代码

有的t网站页面禁止使用右键和复制功能,甚至连Ctrl键也禁止掉了,这个效果是如何实现的呢?其实很简单就是调用了一段JS代码而已。
下面文本框中就是实现效果所需代码:

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) {
document.captureEvents(Event.MOUSEDOWN);
}
document.onmousedown=click;
document.oncontextmenu = new Function("return false;")

var travel=true
var hotkey=17 /* hotkey即为热键的键值,是ASII码,这里99代表c键 */
if (document.layers)
document.captureEvents(Event.KEYDOWN)
function gogo(e)
{ if (document.layers) {
if (e.which==hotkey&&travel){
alert("操作错误.或许是您按错了按键!"); } }
else if (document.all){
if (event.keyCode==hotkey&&travel){ alert("操作错误.或许是您按错了按键!"); }}
}

document.onkeydown=gogo
把上面的代码另存为一个JS文件,然后在想实现此效果的页面用<!--#include file="*.js" -->调用即可,*代表你另存的文件名!

第二种 禁用右键并自动导航

脚本说明:

把如下代码加入<body>区域中

<script language="javascript">
if (navigator.appName.indexOf("Internet Explorer") != -1)
document.onmousedown = noSourceExplorer;
function noSourceExplorer()
{
if (event.button == 2 | event.button == 3)
{
alert("禁止右键...去首页!");
location.replace("https://farisl.com");
}
}
</script>

第三种 禁用右键代码

将以下代码加到〈head〉与〈/head〉之间
<script language="JavaScript">
document.oncontextmenu=new Function("event.returnValue=false;");
document.onselectstart=new Function("event.returnValue=false;");
</script>