有时候为了抵制顺手牵羊的复制狗,不得不采用一些方法来阻挠手段,其中屏蔽右键复制的代码用得比较多,保哥总结大概有以下几种:
<head>语句下输入
<body onselectstart="return false;" oncontextmenu="return false;" >
在系统首页文件(default.asp)和日志文件(article.asp)最底下加入如下代码即可.这两个文件都在根目录下.
<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代码
有的网站页面禁止使用右键和复制功能,甚至连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("http://xiaoc.icpcn.com"); } } </script>
第三种 禁用右键代码
将以下代码加到〈head〉与〈/head〉之间
<script language="JavaScript"> document.oncontextmenu=new Function("event.returnValue=false;"); document.onselectstart=new Function("event.returnValue=false;"); </script>
优点是使用了JS脚本,但是比较复杂,也很容易破解。
推荐使用的方法:
在网页脚本中(header.asp)插入以下代码:
<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()'>
上面代码的意思是当鼠标选中文字时为空
优点是代码容易实现,不需要JS脚本的支持。且在一般的破解复制后,也会清空剪贴板。
其中,onmouseup=’document.selection.empty()’这段代码可以根据需要是否去除,因为这段代码的意思是当鼠标键弹起时,选择的内容为空,有可能会影响正常的登陆。
发表回复