JavaScript防止网页被拷贝程序代码——SHOPXX

1、使右键和复制失效
方法1:
禁止鼠标右键+禁止选中文本代码很简单,只需要在head标签的javascript内加入以下两行代码即可。
在网页中加入以下代码:
代码如下    
<script language="Javascript"> 
document.οncοntextmenu=new Function("event.returnValue=false"); 
document.onselectstart=new Function("event.returnValue=false"); 
</script>
使用了jQuery的页面中可以这么写:
document.οncοntextmenu=function(e){return false;} 
$('body').bind("selectstart",function(){return false;});
方法2:
在<body>中加入以下代码:
代码如下    
<body οncοntextmenu="return false" onselectstart="return false"> 
或 
<body οncοntextmenu="event.returnValue=false" onselectstart="event.returnValue=false">
实质上,方法2与方法1是一样的。
方法3: 
如果只限制复制,可以在<body>加入以下代码:
代码如下    
<body οncοpy="alert('对不起,禁止复制!');return false;">
2、使菜单"文件"-"另存为"失效
如果只是禁止了右键和选择复制,别人还可以通过浏览器菜单中的"文件"-"另存为"拷贝文件。为了使拷贝失效,可以在
代码如下    
<body>与</body>之间加入以下代码: 
<noscript> 
<iframe src="*.htm"></iframe> 
</noscript> 
这样,用户在另存网页时,就会出现"无法保存Web页"的错误。
3、禁止复制
使用方法:在oncopy事件中return false
代码如下    
οncοpy="return false;"
1、禁止复制网页内容
代码如下    
<body οncοpy="return false;">
2、禁止复制元素内容
代码如下    
<input type="text" name="username" οncοpy="return false;" />
二、禁止粘贴
使用方法:在onpaste事件中return false
οnpaste="return false;"禁止将内容粘贴到元素中
代码如下    
<input type="password" name="pwd" οnpaste="return false;" />
三、复制粘贴来源信息
为了防止拷贝党在转载时不注明来源信息,所以需要在其复制时,自动在复制的内容后添加版权声明(默认延迟:100毫秒)
需要使用到clipboardData对象:
getData("Text")方法:获得剪贴板的文本信息
setData("Text",val)方法:设置剪贴板的文本信息
setTimeout(code,delay)方法:超时执行指定的code代码
代码如下    
<html>
<head>
<title>Paste Source Information</title>
<script type="text/javascript">
    function copysource(){
        var source = clipboardData.getData("Text");
        source = source + "本文来自博 www.111cn.net  :" + window.location.href;
        clipboardData.setData("Text", source);
    }
</script>
</head>
<body οncοpy="window.setTimeout('copysource()',100);">
</body>
</html>

注意:上面的代码在IE和Chrome下测试通过,但是在Firefox下鼠标右键不能用但依然可以选中文本,所以出于兼容性考虑,
需要在body的style中加入这么一个属性:
代码如下    复制代码
-moz-user-select:none;

转载于:https://my.oschina.net/u/2452050/blog/506387

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值