我可以禁用右击在我的网页不使用JavaScript?我问这个问题是因为大多数浏览器允许用户禁用JavaScript。

如果不是,我如何使用JavaScript禁用右键?


当前回答

如果您不关心在用户每次尝试右击时提醒他们一条消息,那么可以尝试将此添加到body标签中

<body oncontextmenu="return false;">

这将阻止对上下文菜单的所有访问(不仅从鼠标右键,而且从键盘)。

然而,正如在其他回答中提到的,添加右击禁用功能确实没有意义。任何具备基本浏览器知识的人都可以查看源代码并提取所需的信息。

其他回答

如果您不关心在用户每次尝试右击时提醒他们一条消息,那么可以尝试将此添加到body标签中

<body oncontextmenu="return false;">

这将阻止对上下文菜单的所有访问(不仅从鼠标右键,而且从键盘)。

然而,正如在其他回答中提到的,添加右击禁用功能确实没有意义。任何具备基本浏览器知识的人都可以查看源代码并提取所需的信息。

就这么做

在body标签上写入oncontextmenu

<body oncontextmenu="return false">

将此代码放入页面的<head>标记中。

<script type="text/javascript"> 
function disableselect(e){  
return false  
}  

function reEnable(){  
return true  
}  

//if IE4+  
document.onselectstart=new Function ("return false")  
document.oncontextmenu=new Function ("return false")  
//if NS6  
if (window.sidebar){  
document.onmousedown=disableselect  
document.onclick=reEnable  
}
</script>

这将禁用右键点击整个网页,但只有当JavaScript启用。

我用这个代码禁用右键点击任何网页,它的工作很好。您可以使用此代码

jQuery(文档)时函数(){ jQuery(函数(){ jQuery(这个)。绑定("contextmenu",函数(事件){ event.preventDefault (); alert('右击禁用此站点!!') }); }); }); < html > < >头 <title>在网页中右键单击禁用</title> . < script src = " https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js " > < /脚本> < / >头 身体< > 您编写自己的代码 < /身体> < / html >

有几件事需要考虑:

像chrome商店中“启用右键”这样的浏览器插件的存在是有原因的,你无法绕过它们。你根本无法阻止人们下载你的内容,因为他们必须下载你的内容才能在浏览器中看到;人们尝试,但它总是在那里。

一般来说,如果内容不应该公开,就不要放在网上。

此外,不能右击也是一个可访问性问题,在许多情况下相当于对盲人、残疾人或老年人的非法歧视。查看你当地的法律,但在美国,它以联邦ADA的形式积极反对法律,因为盲人或老年人可能有视力问题,是一个受法律保护的阶层。

所以与其这样做,浪费大量的时间和精力,还不如不要费心去做这个。这可能会让你的公司被起诉,或者让他们无法通过合规审计。