关于js中的鼠标事件总结


Posted in Javascript onJuly 11, 2017

js中鼠标事件主要有onclick,onmousedown,onmouseup,oncontextmenu,ondblclick,所有的这些事件都包含有一个事件对象event,当然在IE低版本下,event对象是挂在window底下的。这个我们另行讨论。

1.通过html添加事件 

<input type="button" click="alert(1)"/>

2.通过DOM0级方式添加事件

<input type="button" value="点击"/>
<script>
  var btn=document.getElementsByTagName('input')[0];
  btn.onclick=function(){
     alert(1);
}
</script>

3.通过DOM2级方式添加事件

事件监听主要接受三个参数,事件类型,事件需要执行的函数,是否冒泡,默认情况下是允许冒泡的

document.addEventListener('click',function( ){ },true)

以上是关于事件添加的三种方式,通过DOM0级方式添加事件有一个缺点就是当添加同一个事件是,后写的会把先写的给覆盖掉,但是通过DOM2级方式添加的相同事件是不会覆盖前面的事件的。同时,需要注意的是通过DOM2级添加的事件类型前面是没有‘on'的,接着就是如果要移除事件的话,DOM0级直接让事件为null就能清除事件,但是如果是DOM2级添加的函数是匿名函数,通过removeEventListener()方法是没办法移除的,因为两者指向的不是同一个函数,如果要移除,请记得使用有名函数。关于最后一个参数true是代表冒泡,false是代表捕获。

/*
* 当触发onclick事件时,console.log(ev.which),鼠标左键的which值为1
* 当触发oncontextmenue时,鼠标的右键值为3,不会触发onclick事件
* 当mousewheel时,鼠标的中键键值为0
* 当document.down时,可以根据按键的不同,从左到右鼠标键值依次为1,2,3
* 在chrome底下,查看ev.wheelDelta,向上是120,向下是-120
* 在FirFox底下,通过addEventListenner()来给鼠标添加滚轮事件,事件类型是DOMMouseScroll,查看是使用ev.detail
* 向上是3,向下是-3
*

以上这篇关于js中的鼠标事件总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery.Ajax之错误调试帮助信息介绍
Jul 04 Javascript
基于jQuery实现简单的折叠菜单效果
Nov 23 Javascript
基于JavaScript实现文字超出部分隐藏
Feb 29 Javascript
详解JavaScript中双等号引起的隐性类型转换
May 30 Javascript
关于webpack2和模块打包的新手指南(小结)
Aug 07 Javascript
fetch 使用及如何接收JS传值
Nov 11 Javascript
360doc网站不登录就无法复制内容的解决方法
Jan 27 Javascript
VueJs组件之父子通讯的方式
May 06 Javascript
使用form-create动态生成vue自定义组件和嵌套表单组件
Jan 18 Javascript
如何在微信小程序中存setStorage
Dec 13 Javascript
浅谈vuex为什么不建议在action中修改state
Feb 02 Javascript
JS this关键字在ajax中使用出现问题解决方案
Jul 17 Javascript
vue音乐播放器插件vue-aplayer的配置及其使用实例详解
Jul 10 #Javascript
angular学习之从零搭建一个angular4.0项目
Jul 10 #Javascript
在Vue中使用echarts的实例代码(3种图)
Jul 10 #Javascript
jquery.validate.js 多个相同name的处理方式
Jul 10 #jQuery
Angular2生命周期钩子函数的详细介绍
Jul 10 #Javascript
使用Webpack提高Vue.js应用的方式汇总(四种)
Jul 10 #Javascript
在vue中获取dom元素内容的方法
Jul 10 #Javascript
You might like
PHP 批量删除 sql语句
2009/06/05 PHP
使用dynatrace-ajax跟踪JavaScript的性能
2010/04/12 Javascript
js open() 与showModalDialog()方法使用介绍
2013/09/10 Javascript
js自动生成的元素与页面原有元素发生堆叠的解决方法
2013/10/24 Javascript
fixedBox固定div漂浮代码支持ie6以上大部分主流浏览器
2014/06/26 Javascript
引用其它js时如何同时处理多个window.onload事件
2014/09/02 Javascript
理解jquery事件冒泡
2016/01/03 Javascript
js滚动条平滑移动示例代码
2016/03/29 Javascript
AngularJS入门教程之ng-class 指令用法
2016/08/01 Javascript
js面向对象实现canvas制作彩虹球喷枪效果
2016/09/24 Javascript
详解Angularjs 自定义指令中的数据绑定
2018/07/19 Javascript
微信小程序实现弹出菜单
2018/07/19 Javascript
axios向后台传递数组作为参数的方法
2018/08/11 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
2018/09/18 Javascript
浅谈微信页面入口文件被缓存解决方案
2018/09/29 Javascript
JavaScript中常用的简洁高级技巧总结
2019/03/10 Javascript
浅谈vuex的基本用法和mapaction传值问题
2019/11/08 Javascript
js实现时分秒倒计时
2019/12/03 Javascript
[03:12]完美世界DOTA2联赛PWL DAY6集锦
2020/11/05 DOTA
如何在Django配置文件里配置session链接
2019/08/06 Python
python使用 request 发送表单数据操作示例
2019/09/25 Python
使用apiDoc实现python接口文档编写
2019/11/19 Python
Python使用Chrome插件实现爬虫过程图解
2020/06/09 Python
Selenium环境变量配置(火狐浏览器)及验证实现
2020/12/07 Python
Python 生成短8位唯一id实战教程
2021/01/13 Python
Quiksilver荷兰官方网站:冲浪和滑雪板
2019/11/16 全球购物
下列程序在32位linux或unix中的结果是什么
2014/03/25 面试题
国际商务专业学生个人的自我评价
2013/09/28 职场文书
中层干部岗位职责
2013/12/18 职场文书
晚自修旷课检讨书怎么写
2014/11/17 职场文书
联谊会开场白
2015/06/01 职场文书
2016年七夕情人节宣传语
2015/11/25 职场文书
高三英语教学反思
2016/03/03 职场文书
干货:如何写好观后感 !
2019/05/21 职场文书
MySQL kill不掉线程的原因
2021/05/07 MySQL
科学家研发出新型速效酶,可在 24 小时内降解塑料制品
2022/04/29 数码科技