JS中鼠标左右键以及中键的事件

Posted lcspring

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS中鼠标左右键以及中键的事件相关的知识,希望对你有一定的参考价值。

在三维场景中有时候需要判断鼠标的事件,除了使用的click事件,只有鼠标左键有效,而右键无效。而对于onmousedown、onmouseup的时候鼠标的事件左键/右键有效。详细请看w3c上的资料。

以下总结鼠标三个按键操作:

首先,需要为window绑定mousedown、mouseup事件

元素对象.addEventListener(‘mousedown‘, 处理函数fun);
1
然后,判断button的值,button 事件属性可返回一个整数,指示当事件被触发时哪个鼠标按键被点击。

button: 返回当事件被触发时,哪个鼠标按钮被点击。

参数 描述
0 规定鼠标左键
1 规定鼠标中键
2 规定鼠标右键 

 

function onMouseDown(event){

    if (event.button == 0) {

    console.log("鼠标左键!")

    }else if (event.button == 2){

    console.log("鼠标右键!");

    }else if(event.button == 1){

    console.log("鼠标滚轮!");

    }
}

 

w3c下的示例

<body onmousedown="whichButton(event)">
<p>请在文档中点击鼠标。一个消息框会提示出您点击了哪个鼠标按键。</p>
<script type="text/javascript">
    function whichButton(event){
    var btnNum = event.button;
        if (btnNum==2){
            alert("您点击了鼠标右键!")
        }else if(btnNum==0){
            alert("您点击了鼠标左键!")
        }else if(btnNum==1){
            alert("您点击了鼠标中键!");
        }else{
            alert("您点击了" + btnNum+ "号键,我不能确定它的名称。");
        }
    }
</script>
</body>    

原文:https://blog.csdn.net/ithanmang/article/details/81561363

以上是关于JS中鼠标左右键以及中键的事件的主要内容,如果未能解决你的问题,请参考以下文章

鼠标滚轮不能滑动都有哪些解决办法

鼠标右键按下和放开的键代码是多少

无法在鼠标事件处理程序中读取 WPF 中键的保持状态 - VMWare Fusion for Mac 上的 Windows 客户机中的行为不一致

Cesium.js禁止三维球鼠标旋转、缩放、鼠标中键拖动

JS中的event 对象详解

如何改变鼠标 linux xmodmap