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

原文地址:https://www.cnblogs.com/lcspring/p/10849841.html

时间: 2024-10-07 19:37:17

JS中鼠标左右键以及中键的事件的相关文章

转---JS 获取鼠标左右键

原文:http://blog.csdn.net/mine3333/article/details/7291557 function test() { alert(event.x+" "+event.y); alert(event.button); } /*右键菜单不显示*/ document.oncontextmenu=function() { return false; } /*document.onmousedown=function() { if(event.button==1)

Win10系统如何设置鼠标左右键互换

一般情况下,点击鼠标左键可以选中目标,点击右键就可以弹出菜单.但这对于惯用左手的用户来说非常的不方便,其实我们可以设置鼠标左右键互换,让用户使用起来更加的便利.那么win10系统如何设置鼠标左右键互换呢? 方法如下: 1.点击开始菜单,选择设置--设备: 2.或按Win+I键,打开设置,点击设备: 3.点击左侧的“鼠标和触摸板”,在右侧的皇冠hg0088选择主按钮下拉菜单中选择“右”即可. 以上就是Win10系统设置鼠标左右键互换的方法了,惯用左手的用户不妨按照上面的方法进行设置吧,希望可以帮助

禁止使用鼠标左右键(跨浏览器实现)

1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"&g

JS获取鼠标左(右)滑事件

鼠标左(右)滑也是网站开发中常见的效果之一,这里对鼠标左(右)滑做出一些解释. 首先要获取需要左右滑事件的节点: eg: var div=document.getElementById("div"); 然后获取点击事件onmousedown并传参: eg: div.onmousedown=function(e){ } 在函数里写一个闭包来判断左右滑,这里需要获取鼠标的坐标,之后进行判断输出结果 eg: div.onmousedown=function(e){ var a1=e.scre

unity中鼠标左键控制摄像机视角上下左右移动

enum RotationAxes { MouseXAndY, MouseX, MouseY } RotationAxes axes = RotationAxes.MouseXAndY; //@HideInInspector float sensitivityX = 15; //@HideInInspector float sensitivityY = 15; //private float minimumX = -360; 原文有此行但并未使用此变量 //private float maxim

Python3 Tkinter基础 Frame bind 绑定鼠标左右键 打印点击的位置 event.x event.x_root

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: from tkinter import * root=Tk() #创建一个框架,在这个框架中响应事件 frame=Frame(root,width=200,height=200) def callBackLeft(event): print("相对于应用程序左上

wpf中的默认右键菜单中的复制、粘贴、剪贴等没有本地化的解决方案

?? 现象: wpf开发中经常会遇到自己的界面已经本地化了, 但是系统默认的一些文字没有本地化, 比如:TextBox的右键菜单中Cut,Paste,Copy没有本地. 原因:机器装中.Net framework对应的Language pack没有装. 解决方法: 比如.net framework 4.0 的language pack的下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=23067 然后下载相应的语音包,系统

更换模型的材质(点击鼠标左右键)

using UnityEngine; using System.Collections; public class ChangeMatericals : MonoBehaviour { public Material IniMaterical;// 替换前材质(原材质) public Material ChangeMaterical;//替换后的材质(半透明材质) private MeshRenderer mr; int index; void Start() { mr = GetCompone

【转】 js怎么区分出点击的是鼠标左键还是右键?

IE 下 onMouseDown 事件有个 events.button 可以返回一个数值,根据数值判断取得用户按了那个鼠标键 events.button==0  默认.没有按任何按钮. events.button==1  鼠标左键 events.button==2  鼠标右键 events.button==3  鼠标左右键同时按下 events.button==4  鼠标中键 events.button==5  鼠标左键和中键同时按下 events.button==6  鼠标右键和中键同时按下