在三维场景中有时候需要判断鼠标的事件,除了使用的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

最新文章

  1. Android网络请求框架
  2. TMethod
  3. 超级有用的9个PHP代码片段
  4. 解析八大O2O典范:他们都做了什么?
  5. 几道 SQL 语句面试题
  6. 练习PYTHON之EPOLL
  7. JavaScript MVC框架PK:Angular、Backbone、CanJS与Ember
  8. C++中public、protected、private
  9. 如何修改UIButton按下后默认的蓝色效果
  10. oracle中to_date详细用法示例(oracle日期格式转换)
  11. Raphael的拖动处理
  12. 关于sql语句between and的边界问题
  13. SQL基本之增删查改操作
  14. 分布式监控系统Zabbix3.2监控数据库的连接数
  15. Linux系统命令行整理
  16. 全球排名第一的免费开源ERP Odoo 12产品上海发布会报名开始
  17. 16: vue + crypto-js + python前后端加密解密
  18. Jenkins之定时构建
  19. 监听器的配置,绑定HttpSessionListener监听器的使用
  20. Vue2.0 新手完全填坑攻略—从环境搭建到发布

热门文章

  1. thinkphp5.0 cache数据缓存机制
  2. Android开发实践:掌握Camera的预览方向和拍照方向
  3. 洛谷P3265 [JLOI2015]装备购买(线性基+高斯消元)
  4. HTTPS为什么更安全,请看这里
  5. PJzhang:python基础入门的7个疗程-one
  6. 【NOIP2015】 Day2 T2 字串 (多维动归)
  7. PostgreSQL - N&#39;&#39;和::bpchar
  8. Vue文件 引入.js文件 的组件
  9. scrapy框架中Item Pipeline用法
  10. python入门之运算符