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

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


当前回答

如果你只是想禁用右键保存网页上的图像,请使用以下CSS解决方案:

your-img-tag {
  pointer-events: none;
}

在同一映像上实现之前:

在同一映像上实现后:

在Chrome和Firefox中都进行了测试。

其他回答

如果不使用Javascript,您就无法完成您的要求。您可以选择使用的任何其他技术只能帮助在服务器端组成web页面,然后发送到浏览器。

没有好的解决方案,没有Javascript的解决方案周期。

试试这个

<script language=JavaScript>
//Disable right mouse click Script

var message="Function Disabled!";

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>

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

<body oncontextmenu="return false;">

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

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

如果你的目标是不允许用户简单地保存你的图像,你也可以检查点击的目标是否为图像,只在这种情况下禁用右键。所以右键可以用于其他目的。从上面的代码:

document.addEventListener("contextmenu", function(e){
    if (e.target.nodeName === "IMG") {
        e.preventDefault();
    }
}, false);

这只是拿走了保存图像的最简单的方法,但它仍然可以做到。

使用此功能可以禁用右键操作。你可以禁用左键点击也检查1和0对应

document.onmousedown = rightclickD;
            function rightclickD(e) 
            { 
                e = e||event;
                console.log(e);
                if (e.button == 2) {
                //alert('Right click disabled!!!'); 
                 return false; }
            }