如何使用jquery防止右键单击选项

时间:2011-04-11 07:27:10

标签: jquery

是否可以阻止我们在网页中使用的图像的右键单击选项。

13 个答案:

答案 0 :(得分:117)

$(document).ready(function() {
    $("img").on("contextmenu",function(){
       return false;
    }); 
}); 

工作示例:http://jsfiddle.net/vak9exyk/

答案 1 :(得分:14)

我认为这应该有所帮助。 Trick是绑定contextmenu事件。

<script type="text/javascript" language="javascript">
        $(function() {
            $(this).bind("contextmenu", function(e) {
                e.preventDefault();
            });
        }); 
</script>

答案 2 :(得分:5)

$(document).ready(function() {

    $(document)[0].oncontextmenu = function() { return false; }

    $(document).mousedown(function(e) {
        if( e.button == 2 ) {
            alert('Sorry, this functionality is disabled!');
            return false;
        } else {
            return true;
        }
    });
});

如果您只想在图片上停用它,请点击$(document).mousedown使用$("#yourimage").mousedown

答案 3 :(得分:3)

以下代码将禁用鼠标右键单击整页。

$(document).ready(function () {
   $("body").on("contextmenu",function(e){
     return false;
   });
});

可以在此处找到完整的教程和工作演示 - Disable mouse right click using jQuery

答案 4 :(得分:3)

<body oncontextmenu="return false" onselectstart="return false" ondragstart="return false" >

在所选标签中设置这些属性

请参阅此处工作示例 - https://codepen.io/Developer_Amit/pen/drYMMv

不需要JQuery (比如)

答案 5 :(得分:3)

试试这个:

$(document).bind("contextmenu",function(e){
    return false;
});

答案 6 :(得分:1)

我在这里找到了一些有用的链接,带有实时工作示例。

我试过它的工作正常。

How to prevent Right Click option using jquery

$(document).bind("contextmenu", function (e) {
        e.preventDefault();
        alert("Right Click is Disabled");
    });

答案 7 :(得分:1)

方法1:

<script type="text/javascript" language="javascript">
        $(document).ready(function(){

        $(document).bind("contextmenu",function(e){

            return false;

            });

    });

</script>

方法2:

<script type="text/javascript" language="javascript">
        $(document).ready(function(){

        $(document).bind("contextmenu",function(e){

            e.preventDefault();

            });

    });

</script>

答案 8 :(得分:1)

以下是一个工作示例,无法再点击红色链接。

$("ul.someLinks1 a").each(function(i, obj) {

  $(obj).on("contextmenu",function(){
     return false;
  }); 
  
  $(obj).css("color", "red");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="someLinks1">
  <li><a href="www.google.de">google</a></li>
  <li><a href="www.stackoverflow.de">stackoverflow</a></li>
  <li><a href="www.test.de">test</a></li>
</ul>

<ul class="someLinks2">
  <li><a href="www.foobar.de">foobar</a></li>
  <li><a href="www.foo.de">foo</a></li>
  <li><a href="www.bar.de">bar</a></li>
</ul>

答案 9 :(得分:1)

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
<script>
 $(document).ready(function(){
  $(document).bind("contextmenu",function(e){
  return false;
  });
});
</script>
</head>
<body>

<p>Right click is disabled on this page.</p>

</body>
</html>

答案 10 :(得分:0)

$(document).ready(function () {

        $("img").on('contextmenu', function (e) {
           e.preventDefault();
        });

});

答案 11 :(得分:-1)

$(document).mousedown(function(e) {
    if( e.button == 2 ) {
         e.preventDefault();
        return false;
    } 
});

答案 12 :(得分:-3)

如果您正在尝试禁用下载/保存图像,脚本将不会停止。在服务器配置级别上你可能会有更好的运气(例如在Apache上修改你的.htaccess)。

尝试在ServerFault上询问此事。