关于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复选框CHECKBOX全选,取消全选
Aug 30 Javascript
javascript 隐藏/显示指定的区域附HTML元素【legend】用法
Mar 05 Javascript
window.dialogArguments 使用说明
Apr 11 Javascript
jquery插件制作 表单验证实现代码
Aug 17 Javascript
js 限制数字 js限制输入实现代码
Dec 04 Javascript
Js,alert出现乱码问题的解决方法
Jun 19 Javascript
node.js中的fs.link方法使用说明
Dec 15 Javascript
js判断浏览器版本以及浏览器内核的方法
Jan 20 Javascript
使用jQuery制作基础的Web图片轮播效果
Apr 22 Javascript
对vuejs的v-for遍历、v-bind动态改变值、v-if进行判断的实例讲解
Aug 27 Javascript
原生JS使用Canvas实现拖拽式绘图功能
Jun 05 Javascript
vue实现简单的日历效果
Sep 24 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的单引号和双引号 字符串效率
2009/05/27 PHP
PHP读取配置文件类实例(可读取ini,yaml,xml等)
2015/07/28 PHP
php封装的连接Mysql类及用法分析
2015/12/10 PHP
PHP/HTML混写的四种方式总结
2017/02/27 PHP
thinkPHP显示不出验证码的原因与解决方法分析
2017/05/20 PHP
详解no input file specified 三种解决方法
2019/11/29 PHP
用jQuery模拟页面加载进度条的实现代码
2011/12/19 Javascript
面向对象的Javascript之一(初识Javascript)
2012/01/20 Javascript
js 上下左右键控制焦点(示例代码)
2013/12/14 Javascript
SeaJS入门教程系列之SeaJS介绍(一)
2014/03/03 Javascript
jQuery基础知识小结
2014/12/22 Javascript
针对初学者的jQuery入门指南
2015/08/15 Javascript
jQuery实现网页顶部固定导航效果代码
2015/12/24 Javascript
浅谈angular懒加载的一些坑
2016/08/20 Javascript
原生JS实现轮播效果+学前端的感受(防止走火入魔)
2016/08/21 Javascript
如何写好你的JavaScript【推荐】
2017/03/02 Javascript
vue.js实现的经典计算器/科学计算器功能示例
2018/07/11 Javascript
React Router V4使用指南(精讲)
2018/09/17 Javascript
vue router 用户登陆功能的实例代码
2019/04/24 Javascript
javascript设计模式 ? 策略模式原理与用法实例分析
2020/04/21 Javascript
Vue切换div显示隐藏,多选,单选代码解析
2020/07/14 Javascript
js实现数字跳动到指定数字
2020/08/25 Javascript
python分布式环境下的限流器的示例
2017/10/26 Python
详解Python的三种可变参数
2019/05/08 Python
python使用递归的方式建立二叉树
2019/07/03 Python
pycharm中显示CSS提示的知识点总结
2019/07/29 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
2020/02/13 Python
HTML5+CSS设置浮动却没有动反而在中间且错行的问题
2020/05/26 HTML / CSS
尼克松手表官网:Nixon手表
2019/03/17 全球购物
政法大学毕业生自荐信范文
2014/01/01 职场文书
员工保密协议书
2014/09/27 职场文书
自我检讨书范文
2015/01/28 职场文书
小型婚礼主持词
2015/06/30 职场文书
小学数学教师研修日志
2015/11/13 职场文书
分布式锁为什么要选择Zookeeper而不是Redis?看完这篇你就明白了
2021/05/21 Redis
win11无线投屏在哪设置? win11无线投屏功能的使用方法
2022/04/08 数码科技