如何jquery在右键单击上添加类到div

时间:2014-10-09 12:42:14

标签: jquery html css

左键单击

$(document).ready(function(){
    $( "div" ).click(function() {
      $( this ).toggleClass( "class-one" );
     //alert('left click');
    });
});

右键单击

$(document).ready(function(){
    $( "div" ).click(function() {
      $( this ).toggleClass( "class-two" );
     //alert('Right Click');
    });
});

这是我的要求Jquery鼠标左键单击添加一个类,鼠标右键单击添加另一个类,所以我的任务左键单击添加类已完成,右键单击添加类不工作,

如果可以右键单击Jquery?

3 个答案:

答案 0 :(得分:2)

右键单击的事件名称为contextmenu

$("div").on("contextmenu", function() {
    $(this).toggleClass("class-two");
});

答案 1 :(得分:0)

你可以试试这个:

$(document).ready(function () {
    $("div").mousedown(function (e) {
        $(this).toggleClass("class-two");
        if (e.button == 2) {
            alert('Right mouse!');
            //here goes the code you want to add in mouse right click
        }
    });
});
div {
    height:100px;
    width: 100px;
    background: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div></div>

答案 2 :(得分:0)

这样做:

HTML -

<div id="test">
    test test
</div>

CSS -

div {
    width: 300px;
    height: 200px;
    background-color: #99EAEA;
}

.class-one {
    background-color: #EAEAEA;
}

.class-two {
    background-color: #EA3355;
}

JQUERY -

$(document).ready(function(){ 
    document.oncontextmenu = function() { return false; };

    $("#test").click(function() {
      $( this ).removeClass("class-two").addClass("class-one");
    });

    $(document).mousedown(function(e){ 
        if( e.button == 2 ) { 
            $("#test").removeClass("class-one").addClass("class-two");
            return false; 
        } 
        return true; 
    });  
});
是的,那就是它!演示:http://jsfiddle.net/ag62dyry/1/