网站内容禁止复制和粘贴、另存为的js代码

本文详细介绍了如何在网页中通过JavaScript代码实现禁止用户进行复制操作及防止通过浏览器菜单“文件”-“另存为”进行文件拷贝的方法。包括通过设置事件监听阻止复制和右键菜单选项,以及利用noscript标签和事件阻止方法来阻止另存为操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一、右键和复制失效

方法1:在网页中加入一下代码:

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

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

<body oncontextmenu="return false" onselectstart="return false">
//或者如下:
<body oncontextmenu="event.returnValue=false" onselectstart="event.returnValue=false">

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

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

第二、使菜单”文件”-”另存为”失效

如果只是禁止了右键和选择复制,别人还可以通过浏览器菜单中的”文件”-”另存为”拷贝文件。为了使拷贝失效,可以在<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;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值