禁用右键单击和弹出窗口

时间:2021-01-07 21:39:11

标签: javascript html jquery

我想禁用右键单击图像。当用户右键单击图像时,我希望它显示一条消息(请运行下面的代码段)。

在下面的代码中,我有两张图片。如果我右键单击图像的顶部,它会弹出一个窗口并显示“不允许右键单击”。但是,如果我向下滚动并右键单击图像,则会在网站底部显示此弹出窗口。

你能告诉我如何让这个弹出窗口在我右键单击的地方打开吗? (例如,如果我右键单击第二张图片,这个弹出窗口甚至不会出现)。

<script>
  if (document.getElementById('test1').addEventListener) {
    document.getElementById('test1').addEventListener('contextmenu', function(e) {
      $("#rmenu").toggleClass("hide");
      $("#rmenu").css({
        position: "fixed",
        top: e.pageY,
        left: e.pageX
      });
      e.preventDefault();
    }, false);
  }
  $(document).bind("click", function(event) {
    document.getElementById("rmenu").className = "hide";
  });
</script>

2 个答案:

答案 0 :(得分:1)

position: absolute 代替 position: fixed。这里:

...
$("#rmenu").css({
  position: "absolute",
  top: e.pageY,
  left: e.pageX
});
...

答案 1 :(得分:-1)

好吧,我建议您将图像或整个 HTML 页面转换为画布。如果目的是隐藏代码或不下载图像。

相关问题