关于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 相关文章推荐
用tip解决Ext列宽度不够的问题
Dec 13 Javascript
仿谷歌主页js动画效果实现代码
Jul 14 Javascript
js实现幻灯片播放图片示例代码
Nov 07 Javascript
JS判断客服QQ号在线还是离线状态的方法
Jan 13 Javascript
jQuery层动画定位滑动效果的方法
Apr 30 Javascript
jquery实现经典的淡入淡出选项卡效果代码
Sep 22 Javascript
bootstrap table 数据表格行内修改的实现代码
Feb 13 Javascript
微信小程序自定义模态对话框实例详解
Aug 16 Javascript
vue js秒转天数小时分钟秒的实例代码
Aug 08 Javascript
前后端如何实现登录token拦截校验详解
Sep 03 Javascript
小程序封装路由文件和路由方法(5种全解析)
May 26 Javascript
卸载vue2.0并升级vue_cli3.0的实例讲解
Feb 16 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中json_encode中文编码问题分析
2011/09/13 PHP
php文件上传的两种实现方法
2016/04/04 PHP
PHP基于cookie实现统计在线人数功能示例
2019/01/16 PHP
JS控制表格隔行变色
2006/06/26 Javascript
漂亮的widgets,支持换肤和后期开发新皮肤(2007-4-27已更新1.7alpha)
2007/04/27 Javascript
javascript 定义新对象方法
2010/02/20 Javascript
简单的js表单验证函数
2013/10/28 Javascript
简体中文转换繁体中文(实现代码)
2013/12/25 Javascript
jQuery中removeData()方法用法实例
2014/12/27 Javascript
DOM节点的替换或修改函数replaceChild()用法实例
2015/01/12 Javascript
jQuery中offset()方法用法实例
2015/01/16 Javascript
使用JavaScript+canvas实现图片裁剪
2015/01/30 Javascript
jQuery通过控制节点实现仅在前台通过get方法完成参数传递
2015/02/02 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
2015/04/01 Javascript
jquery实现一个简单的表单验证实例
2016/03/30 Javascript
对象转换为原始值的实现方法
2016/06/06 Javascript
jQuery编写textarea输入字数限制代码
2017/03/23 jQuery
jQuery列表检索功能实现代码
2017/07/17 jQuery
使用express搭建一个简单的查询服务器的方法
2018/02/09 Javascript
Angular-UI Bootstrap组件实现警报功能
2018/07/16 Javascript
详解swiper在vue中的应用(以3.0为例)
2018/09/20 Javascript
vue组件中的样式属性scoped实例详解
2018/10/30 Javascript
JS/CSS实现字符串单词首字母大写功能
2019/09/03 Javascript
vue实现购物车加减
2020/05/30 Javascript
python实现去除下载电影和电视剧文件名中的多余字符的方法
2014/09/23 Python
DJANGO-ALLAUTH社交用户系统的安装配置
2014/11/18 Python
python实时监控cpu小工具
2018/06/21 Python
Python查找数组中数值和下标相等的元素示例【二分查找】
2019/02/13 Python
Python supervisor强大的进程管理工具的使用
2019/04/24 Python
python如何写个俄罗斯方块
2020/11/06 Python
Grow Gorgeous美国官网:只要八天,体验唤醒毛囊后新生的茂密秀发
2018/06/04 全球购物
意大利和国际最佳时尚品牌:Drestige
2019/12/28 全球购物
.NET初级开发工程师面试题
2014/04/18 面试题
关于VPN
2012/06/10 面试题
会计手工模拟做账心得体会
2016/01/22 职场文书
vue实现简易音乐播放器
2022/08/14 Vue.js