1. ホーム
  2. javascript

[解決済み] jQueryでマウスの左クリックと右クリックを区別する方法

2022-03-17 20:42:09

質問

jQueryを使用して、クリックされたマウスボタンを取得する方法は?

$('div').bind('click', function(){
    alert('clicked');
});

は、右クリックと左クリックの両方がトリガーになっていますが、右クリックをキャッチできるようにするにはどうしたらよいでしょうか?以下のようなものがあればうれしいです。

$('div').bind('rightclick', function(){ 
    alert('right mouse button is pressed');
});

解決方法は?

jQueryバージョン1.1.3現在。 event.which を正規化します。 event.keyCodeevent.charCode を使えば、ブラウザの互換性の問題を心配する必要はありません。 のドキュメント event.which

event.which は、マウスの左ボタン、中ボタン、右ボタンにそれぞれ1、2、3を与えるので

$('#element').mousedown(function(event) {
    switch (event.which) {
        case 1:
            alert('Left Mouse button pressed.');
            break;
        case 2:
            alert('Middle Mouse button pressed.');
            break;
        case 3:
            alert('Right Mouse button pressed.');
            break;
        default:
            alert('You have a strange Mouse!');
    }
});