网站内容禁止复制解决办法

Posted 是BUG酱哇

tags:

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

第一种方法:

加入以下js代码

<script type="text/javascript">

// oncontextmenu 事件在元素中用户右击鼠标时触发并打开上下文菜单

document.oncontextmenu=new Function("event.returnValue=false"); 

// onselectstart几乎可以用于所有对象,其触发时间为目标对象被开始选中时(即选中动作刚开始,尚未实质性被选中)

document.onselectstart=new Function("event.returnValue=false"); 

</script>
例子:

<!DOCTYPE html>

<html lang="zh">

<head>

<meta charset="UTF-8" />

<style>

*{margin: 0;padding: 0;}

.container h1 {color: gold;text-align:center;margin-bottom:30px;}

.container p {width: 500px;margin:0 auto;color: purple;text-indent: 30px;}

</style>

</head>

<body>

<div class="container">

<h1>网页标题</h1>

<p>

详细内容 (不想被复制的)

</p>

</div>

<!-- 第一种方法:通过js代码实现 -->

<script type="text/javascript">

// oncontextmenu 事件在元素中用户右击鼠标时触发并打开上下文菜单

document.oncontextmenu=new Function("event.returnValue=false"); 

// onselectstart几乎可以用于所有对象,其触发时间为目标对象被开始选中时(即选中动作刚开始,尚未实质性被选中)

document.onselectstart=new Function("event.returnValue=false"); 

</script>

</body>

</html>

第二种方法:
在<body>中加入以下代码:

 <body oncontextmenu="return false" onselectstart="return false"> 

或 

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

 

body中加入代码的这种方法有个缺陷就是取决于body的内容,如果body内容较少,从body下方往上选中内容,仍然是可以复制网站的内容的。


第三种方法:
如果只限制复制,可以在<body>加入以下代码: 
<body oncopy="alert(‘对不起,禁止复制!‘);return false;"> 
例子:

<!DOCTYPE html>

<html lang="zh">

<head>

<meta charset="UTF-8" />

<style>

*{margin: 0;padding: 0;}

.container h1 {color: gold;text-align:center;margin-bottom:30px;}

.container p {width: 500px;margin:0 auto;color: purple;text-indent: 30px;}

</style>

</head>

<body oncopy="alert(‘对不起,禁止复制!‘);return false;">

<div class="container">

<h1>标签</h1>

<p>

详细内容 (不想被复制的)

</p>

</div>

</body>

</html>

第四种方法:
禁用Ctrl+C和Ctrl+V,代码:

// 禁用Ctrl+C和Ctrl+V(所有浏览器均支持)

$(document).keydown(function(e) {

  if(e.ctrlKey && (e.keyCode == 86 || e.keyCode == 67)) {

    return false;

  }

});
例子

<!DOCTYPE html>

<html lang="zh">

<head>

<meta charset="UTF-8" />

<style>

*{margin: 0;padding: 0;}

.container h1 {color: gold;text-align:center;margin-bottom:30px;}

.container p {width: 500px;margin:0 auto;color: purple;text-indent: 30px;}

</style>

</head>

<body>

<div class="container">

<h1>标签</h1>

<p>

详细内容 (不想被复制的)

</p>

</div>

<script src="http://libs.baidu.com/jquery/2.1.1/jquery.min.js"></script>

<script>

$(document).keydown(function(e) {

 if(e.ctrlKey && (e.keyCode == 86 || e.keyCode == 67)) {

 alert(‘不能Ctrl+C和Ctrl+V复制、粘贴‘);

   return false;

 }

});

</script>

</body>

</html>

以上是关于网站内容禁止复制解决办法的主要内容,如果未能解决你的问题,请参考以下文章

chrome新版本flash无法在http网站上运行的解决办法

小米浏览器出现根据法律法规本页面禁止显示的解决办法

禁止在当前页拖拽内容打开,禁止拖拽图片在新窗口打开-解决办法。

网站无法复制图片到word中解决办法

远程桌面不能复制粘贴解决办法

uniapp复制内容到剪切板失败的解决办法 - 复制数字失败 - uni.setClipboardData