js禁止复制页面文字

摘要:做项目的时候有客户提出要求,不能用用户浏览他发表的文章时复制他的文章,一种比较简单的方法,禁止用户选中页面的文字和禁止用户右键菜单:

做项目的时候有客户提出要求,不能用用户浏览他发表的文章时复制他的文章,一种比较简单的方法,禁止用户选中页面的文字和禁止用户右键菜单:

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

如果只是禁止部分区域的话,直接在标签上加上onselectstart=“return false”

<div onselectstart="return false" id="div" >
此区域禁止复制
</div>

 或者

<div onselectstart="return false" id="div" >
此区域禁止复制
</div>
<script type="text/javascript" >
$(document).ready(function(){
document.getElementById('div').onselectstart =function(){
return false;
};
});
</script>

在火狐下这种js写法是无效的,在火狐下有个屏蔽选择样式的样式属性 -moz-user-select (只支持火狐浏览器)

<div style="-moz-user-select:none;" >
禁止复制此区域
</div>

如果要禁止整个页面

<script type="text/javascript" >
$(document).ready(function(){
$("body").css("-moz-user-select","none");
});
</script>

-moz-user-select主要有三个值 none -moz-all -moz-none 

 Input表单中文字一般页面文字
none不可选不可选
-moz-all不可选可选
-moz-none可选不可选


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

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