1. ホーム
  2. javascript

[解決済み】右クリックはJavascriptのイベントですか?

2022-04-12 18:05:55

質問

右クリックはJavascriptのイベントですか? もしそうなら、どのように使用するのですか?

どのように解決するのですか?

他の方がおっしゃっているように、マウスの右ボタンを検出することができます 通常のマウスイベント(mousedown、mouseup、click)を通して . しかし、右クリックメニューが表示されたときの発火イベントを探しているのであれば、それは間違った場所を探しています。 右クリック/コンテキストメニューは、キーボード(Windowsと一部のLinuxではshift+F10またはコンテキストメニューキー)からもアクセスできます。 このような場合、探しているイベントは oncontextmenu :

window.oncontextmenu = function ()
{
    showCustomMenu();
    return false;     // cancel default menu
}

マウスイベント自体については、ブラウザはイベント処理関数からアクセス可能なイベントオブジェクトにプロパティを設定します。

document.body.onclick = function (e) {
    var isRightMB;
    e = e || window.event;

    if ("which" in e)  // Gecko (Firefox), WebKit (Safari/Chrome) & Opera
        isRightMB = e.which == 3; 
    else if ("button" in e)  // IE, Opera 
        isRightMB = e.button == 2; 

    alert("Right mouse button " + (isRightMB ? "" : " was not") + "clicked!");
} 

window.oncontextmenu - MDC