【问题标题】:How to check if right mouse button pressed button?如何检查鼠标右键是否按下按钮?
【发布时间】:2020-08-24 09:35:18
【问题描述】:

我已经为此工作了一整天,没有任何进展。无论如何,我必须构建一个简单的 JavaScript 程序,因为我们只是在开始阶段,基本上应该有一个按钮,如果我用鼠标左键按下它,它应该警报(“LEFT”),这部分很容易,因为我可以使用 onClick,但我还应该检查我是否用鼠标右键按下了按钮,在这种情况下它应该警报(“RIGHT”)。我的挣扎来自于这样一个事实,即检查左键很容易,但你实际上如何用右键检查呢?这可能是一个简单的问题,但我似乎没有找到正确的答案。先感谢您。

【问题讨论】:

  • 为了澄清,下面的答案将指示按钮是主要鼠标操作还是第三鼠标操作,但“左”和“右”的概念将取决于用户偏好(即左-或右手鼠标配置)。
  • 感谢您指出这一点@lukiffer

标签: javascript button input


【解决方案1】:

只需检查 event.button 代码

0 === 左

2 === 对

document.querySelector(buttonSelector).addEventListener('mousedown', (e) => {
  if(e.button === 0){
    alert('Left') 
 }else if(e.button === 2){
    alert('Right')
 }

});

【讨论】:

    【解决方案2】:

    如果您还没有此“上下文菜单”部分,我会添加它以防止弹出右键单击上下文菜单。

    document.getElementById('buttonID').addEventListener('mousedown', (e) => {
      if (e.button === 0) {
        console.log('Left')
      } else if (e.button === 2) {
        console.log('Right')
      }
    });
    
    document.getElementById('buttonID').addEventListener("contextmenu", (e) => {
      e.preventDefault();
      return false;
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多