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

1、使右键和复制失效

方法1:

禁止鼠标右键+禁止选中文本代码很简单,只需要在head标签的javascript内加入以下两行代码即可。

在网页中加入以下代码:

 代码如下 复制代码

<script language="Javascript">
document.oncontextmenu=new Function("event.returnValue=false");
document.onselectstart=new Function("event.returnValue=false");
</script>

使用了jQuery的页面中可以这么写:

document.oncontextmenu=function(e){return false;}
$('body').bind("selectstart",function(){return false;});

方法2:

在<body>中加入以下代码:

 代码如下 复制代码
<body oncontextmenu="return false" onselectstart="return false">

<body oncontextmenu="event.returnValue=false" onselectstart="event.returnValue=false">

实质上,方法2与方法1是一样的。

方法3:
如果只限制复制,可以在<body>加入以下代码:

 代码如下 复制代码
<body oncopy="alert('对不起,禁止复制!');return false;">

2、使菜单"文件"-"另存为"失效

如果只是禁止了右键和选择复制,别人还可以通过浏览器菜单中的"文件"-"另存为"拷贝文件。为了使拷贝失效,可以在

 代码如下 复制代码
<body>与</body>之间加入以下代码:
<noscript>
<iframe src="*.htm"></iframe>
</noscript>

这样,用户在另存网页时,就会出现"无法保存Web页"的错误。

3、禁止复制

使用方法:在oncopy事件中return false

 代码如下 复制代码
oncopy="return false;"

1、禁止复制网页内容

 代码如下 复制代码
<body oncopy="return false;">

2、禁止复制元素内容

 代码如下 复制代码
<input type="text" name="username" oncopy="return false;" />

二、禁止粘贴

使用方法:在onpaste事件中return false

onpaste="return false;"禁止将内容粘贴到元素中

 代码如下 复制代码
<input type="password" name="pwd" onpaste="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 oncopy="window.setTimeout('copysource()',100);">
</body>
</html>

注意:上面的代码在IE和Chrome下测试通过,但是在Firefox下鼠标右键不能用但依然可以选中文本,所以出于兼容性考虑,

需要在body的style中加入这么一个属性:

 代码如下 复制代码

 -moz-user-select:none;

这样一来就不用担心自己的网站内容被别人随便复制了。

时间: 2024-10-28 05:05:41

JavaScript防止网页被拷贝程序代码的相关文章

网页视频播放器程序代码(通用代码)_网页播放器

'*********************************************** '函数名:SelPlay '作  用:在网页中播放视频 '参  数:strUrl ---- 视频地址            strWidth ---显示视频宽            strHeight ---显示视频高 '*********************************************** Sub SelPlay(strUrl,strWidth,StrHeight) Dim

网页视频播放器程序代码通用代码

在给客户做个程序时,突然遇到个问题,就是产品页用户提交视频播放文件时,如何根据提交的网址内的视频格式进行正确的播放呢....郁闷了一会,想好了思路,说动手就动手... 思路是先取得文件的类型,并根据类型选择不同的网页播放器代码..三下五去二.....同时为了代码在以后的复用性,写成了通用的调用函数.方便以后在别的系统中调用.. 现发布源代码如下: 以下为引用的内容:Sub SelPlay(strUrl,strWidth,StrHeight)Dim Exts,isExtIf strUrl <>

javascript预览本地图片程序代码

图片上传预览是一种在图片上传之前对图片进行本地预览的技术. 使用户选择图片后能立即查看图片,而不需上传服务器,提高用户体验. 但随着浏览器安全性的提高,要实现图片上传预览也越来越困难. 不过群众的智慧是无限的,网上已经有很多变通或先进的方法来实现. 例如ie7/ie8的滤镜预览法,firefox 3的getAsDataURL方法. 但在opera.safari和chrome还是没有办法实现本地预览,只能通过后台来支持预览  代码如下 复制代码 <style type="text/css&q

asp 网页视频播放器程序代码(通用代码),支持avi,wmv,asf,mov,rm,ra,ram等_网页播放器

思路是先取得文件的类型,并根据类型选择不同的网页播放器代码..三下五去二.....同时为了代码在以后的复用性,写成了通用的调用函数.方便以后在别的系统中调用.. 现发布源代码如下: 复制代码 代码如下: Sub SelPlay(strUrl,strWidth,StrHeight) Dim Exts,isExt If strUrl <> "" Then isExt = LCase(Mid(strUrl,InStrRev(strUrl, ".")+1)) E

php 网页采集入库程序代码

php 网页采集程序总结,最近帮朋友做了个采集程序 以www.xxxx.com/shop_list.php?page=1&province=%B1%B1%BE%A9为例 %B1%B1%BE%A9是gb2312的转码,例如 $aa="北京"; $aa = @iconv("utf-8″, "gb2312″,$aa); echo $bb=urlencode($aa); 我们通过file_get_contents($url) 抓取网页 当然也可以是curl func

javascript中怎么获取农历程序代码

  获取农历 农历月的天数是一个变数,有时是 29 天,有时是 30 天. 农历每月的第一天是月亮全黑的日子. 农历年由 24 个节气来确定,节气则由太阳的角度来确定.农历的第一个节气叫 雨水,定在太阳的角度为 330 度的日子.其余的 23 个节气分别定在太阳的角度 每变化 15 度的日子.下面的表格列出了 24 个节气的名称和定义: 命称    角度    公历日期      周期 立春     315     2月 4日 雨水     330     2月19日    29.8天 惊蛰  

php获取网页请求状态程序代码

方法一,使用 fsockopen 严重鄙视curl_getinfo!  代码如下 复制代码 function get_http_code($url="localhost", $port=80, $fsock_timeout=10){     set_time_limit(0);     ignore_user_abort(true);       // 记录开始时间     list($usec, $sec) = explode(" ", microtime(tru

JavaScript取得鼠标绝对位置程序代码

首先不同浏览器中event位置属性的分析: 1. IE的event.x,event.y是以事件触发元素的父元素外界为参考点(不包括滚动距离) 2. Firefox的event.pageX,event.pageY是以body元素为参考点(包括滚动距离) 3. event.clientX,event.clientY以浏览器左上角为参考点(不包括滚动距离) 4. IE的event.offsetX,event.offsetY和Firefox的event.layerX,event.layerY以事件触发元

JavaScript取得鼠标绝对位置程序代码介绍_javascript技巧

首先不同浏览器中event位置属性的分析: 1. IE的event.x,event.y是以事件触发元素的父元素外界为参考点(不包括滚动距离) 2. Firefox的event.pageX,event.pageY是以body元素为参考点(包括滚动距离) 3. event.clientX,event.clientY以浏览器左上角为参考点(不包括滚动距离) 4. IE的event.offsetX,event.offsetY和Firefox的event.layerX,event.layerY以事件触发元