マウスの右クリックにイベントをバインドする 質問する

マウスの右クリックにイベントをバインドする 質問する

ブラウザのコンテキスト メニューを無効にした後、右クリックで何らかのアクションをトリガーするにはどうすればよいですか?

これ試してみた。

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

ベストアンサー1

jQuery には組み込みの oncontextmenu イベント ハンドラーはありませんが、次のようにすることができます。

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

  $(document).mousedown(function(e){ 
    if( e.button == 2 ) { 
      alert('Right mouse button!'); 
      return false; 
    } 
    return true; 
  }); 
});

基本的に、DOM 要素の oncontextmenu イベントをキャンセルしてブラウザのコンテキスト メニューを無効にし、次に jQuery で mousedown イベントをキャプチャします。すると、イベント引数でどのボタンが押されたかがわかります。

上記の例を試してみてくださいここ

おすすめ記事