JS实现网站内容的禁止复制和粘贴另存为

Posted pangguoming

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS实现网站内容的禁止复制和粘贴另存为相关的知识,希望对你有一定的参考价值。

1、使右键和复制失效
方法1:
在网页中加入以下代码: 

  1. <script language="javascript">  
  2. document.oncontextmenu=new Function("event.returnValue=false");  
  3. document.onselectstart=new Function("event.returnValue=false");  
  4. </script>  


方法

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页"的错误。

 

————————————————————————————————————

 

另外,也可以使用event.preventDefault() 方法来阻止oncontextmenu() 还有onselectstart()

document.oncontextmenu=function(evt){
  evt.preventDefault();
}

document.onselectstart=function(evt){
 evt.preventDefault();
};

 

—————————————————————————————————————

 

既然可以禁止,那么当然也可以启用它,将事件重新赋值即可,可以赋值为null,或字符串、布尔值都行。如:

document.oncontextmenu="";

document.onselectstart=true;

 

 或者 禁用js:打开谷歌浏览器,选择“设置” –  选择“隐私设置” –  选项“内容设置” –  选择“JavaScript” – 选择“不允许任何网站运行JavaScript”,设置完成刷新即可。

以上是关于JS实现网站内容的禁止复制和粘贴另存为的主要内容,如果未能解决你的问题,请参考以下文章

打印网页,不能复制粘贴,能保存下来吗?

有些网站不能复制粘贴 该怎么办

将 Excel 图表复制并粘贴到 Word 中,无需链接或另存为 GIF

将一张excel表中的数据全部粘贴到txt文本文件中,如何做

网页弹出窗口的内容怎么保存

word里照片怎么粘贴到桌面上