我的一位客户希望网站上有一个无复制脚本,以防止人们从页面上复制文本。是否有跨浏览器方式可以执行此操作?我可能只是看一个JavaScript方法。我知道这可以被一些知识渊博的人关掉,但在大多数情况下会这样做。
答案 0 :(得分:3)
互联网上有关于此请求的ton of resources。请注意,确定的用户始终可以从网页复制文本。
答案 1 :(得分:2)
<script language="JavaScript">
// distributed by http://hypergurl.com <!-- var popup="Sorry, right-click
is disabled.\n\nThis Site Copyright ©2000"; function noway(go) { if
(document.all) { if (event.button == 2) { alert(popup); return false; } } if (document.layers)
{ if (go.which == 3) { alert(popup); return false; } } } if (document.layers)
{ document.captureEvents(Event.MOUSEDOWN); } document.onmousedown=noway; // -->
</script>
<script language="JavaScript1.1">
// distributed by http://www,hypergurl.com <!-- var debug = true; function
right(e) { if (navigator.appName == 'Netscape' && (e.which == 3 || e.which
== 2)) return false; else if (navigator.appName == 'Microsoft Internet Explorer'
&& (event.button == 2 || event.button == 3)) { alert('This Page is fully
protected!'); return false; } return true; } document.onmousedown=right; if (document.layers)
window.captureEvents(Event.MOUSEDOWN); window.onmousedown=right; //--></script>
答案 2 :(得分:2)
不是答案,而是我对这个主题的看法:
如果您希望人们不要复制您网站的内容,请不要将其发布到互联网上。 javascript将阻止用户选择,但用户将会恼火。 (例如,我有时选择文字以使阅读更容易,而不是复制它)
人们仍然会通过HTML源/ DOM获取文本。 人们可以重新键入文本或制作图片并使用OCR。
答案 3 :(得分:2)
<script language=JavaScript>
var message="!!YOU CANNOT COPY ANY TEXT OR IMAGE FROM THIS SITE!";
function clickIE4()
{
if (event.button==2)
{
alert(message);
return false;
}
}
function clickNS4(e)
{
if (document.layers||document.getElementById&&!document.all)
{
if (e.which==2||e.which==3)
{
alert(message);
return false;
}
}
}
if (document.layers)
{
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById)
{
document.onmousedown=clickIE4;
}
document.oncontextmenu=new Function("alert(message);return false")
</script>
</head>
<body>