Js如何禁止复制粘贴?

摘要:JavaScript中可以使用oncopy事件来禁止复制,oncopy事件在用户拷贝元素上的内容时触发。使用onpaste事件禁止粘贴,onpaste事件在用户向元素中粘贴文本时触发。

JavaScript中可以使用oncopy事件来禁止复制,oncopy事件在用户拷贝元素上的内容时触发。使用onpaste事件禁止粘贴,onpaste事件在用户向元素中粘贴文本时触发。


oncopy事件:

定义和用法

oncopy 事件在用户拷贝元素上的内容时触发。

提示: oncopy 事件在用户拷贝元素时也会触发,例如, 拷贝 <img> 元素。

提示: oncopy 事件通常用于 type="text" 的 <input> 元素。

提示: 有三种方式可以拷贝元素和内容:

按下 CTRL + C

在你的浏览器的 Edit(编辑) 菜单中选择 "Copy(复制)"

邮件鼠标按钮,在上下文菜单中选择 "Copy(复制)" 命令。

语法

HTML中

 <element oncopy="myScript">

JavaScript中:

object.oncopy = function(){
   //操作  
    myScript  
}

JavaScript中,使用addEventListener()方法:

object.addEventListener('copy',myScript);
//IE8及更早的IE版本不支持addEventListener()方法


onpaste事件:

定义和用法

onpaste 事件在用户向元素中粘贴文本时触发。

注意: 虽然使用的 HTML 元素都支持 onpaste 事件,但实际上并非支持所有元素,例如 <p> 元素, 除非设置了 contenteditable 为 "true" (查看下文的更多实例)。

提示: onpaste 事件通常用于 type="text" 的 <input> 元素。

提示: 有三种方式可以在元素中粘贴内容:

按下 CTRL + V

从浏览器的编辑菜单中选择 "Paste(粘贴)"

右击鼠标按钮在上下文菜单中选择 "Paste(粘贴)" 命令。

语法

HTML中:

<element onpaste="myScript">

JavaScript中:

object.onpaste = function(){
   //操作
   myScript;  
}

JavaScript中,使用addEventListener()方法:

object.addEventListener('paste',myScript);2
//Internet Explorer 8 及更早 IE 版本不支持 addEventListener() 方法。

实现原理:

执行复制与粘贴事件,并在事件中返回false。

JavaScript代码:

var bodyMain = document.getElementById('bodyMain' );
                  //禁止复制
                  bodyMain.oncopy = function(){
                       return false;
                }      
                 //禁止粘贴      
                  bodyMain.onpaste = function(){   
                       return false; 
}

本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://shenqiku.cn/article/FLY_7814