关于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 相关文章推荐
简介JavaScript中setUTCSeconds()方法的使用
Jun 12 Javascript
JS调用某段SQL语句的方法
Oct 20 Javascript
JavaScript 计算笛卡尔积实例详解
Dec 02 Javascript
DOM 事件的深入浅出(一)
Dec 05 Javascript
最常见和最有用的字符串相关的方法详解
Feb 06 Javascript
使用vue.js编写蓝色拼图小游戏
Mar 17 Javascript
微信小程序 es6-promise.js封装请求与处理异步进程
Jun 12 Javascript
基于JS脚本语言的基础语法详解
Jul 22 Javascript
PHP自动加载autoload和命名空间的应用小结
Dec 01 Javascript
微信小程序使用map组件实现路线规划功能示例
Jan 22 Javascript
vue-video-player 断点续播的实现
Feb 01 Vue.js
使用Cargo工具高效创建Rust项目
Aug 14 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
第三节 定义一个类 [3]
2006/10/09 PHP
php图片验证码代码
2008/03/27 PHP
php面向对象全攻略 (二) 实例化对象 使用对象成员
2009/09/30 PHP
PhpMyAdmin中无法导入sql文件的解决办法
2010/01/08 PHP
php数组索引与键值操作技巧实例分析
2015/06/24 PHP
php获取当前月与上个月月初及月末时间戳的方法
2016/12/05 PHP
php json相关函数用法示例
2017/03/28 PHP
laravel中短信发送验证码的实现方法
2018/04/25 PHP
PHP Ajax跨域问题解决方案代码实例
2020/08/01 PHP
javascript 读取图片文件的大小
2009/06/25 Javascript
jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析
2013/04/26 Javascript
javaScript使用EL表达式的几种方式
2014/05/27 Javascript
javascript常见操作汇总
2014/09/03 Javascript
jquery性能优化高级技巧
2015/08/24 Javascript
AngularJS的Filter的示例详解
2017/03/07 Javascript
JavaScript实现动态增删表格的方法
2017/03/09 Javascript
用js将long型数据转换成date型或datetime型的实例
2017/07/03 Javascript
一个简易时钟效果js实现代码
2020/03/25 Javascript
JS实现验证码倒计时的注册页面
2018/01/02 Javascript
使用vue打包时vendor文件过大或者是app.js文件很大的问题
2018/06/29 Javascript
JS中的一些常用的函数式编程术语
2019/06/15 Javascript
Vue图片浏览组件v-viewer用法分析【支持旋转、缩放、翻转等操作】
2019/11/04 Javascript
Vue实现图片与文字混输效果
2019/12/04 Javascript
nuxt 每个页面head标签内容设置方式
2020/11/05 Javascript
从零学python系列之教你如何根据图片生成字符画
2014/05/23 Python
Python简明入门教程
2015/08/04 Python
Python实现简单登录验证
2016/04/13 Python
Sanic框架异常处理与中间件操作实例分析
2018/07/16 Python
Python3中的最大整数和最大浮点数实例
2019/07/09 Python
python实现根据给定坐标点生成多边形mask的例子
2020/02/18 Python
详解html2canvas截图不能截取圆角图片的解决方案
2018/01/30 HTML / CSS
viagogo波兰票务平台:演唱会、体育比赛、戏剧门票
2018/04/23 全球购物
校园安全广播稿
2014/02/08 职场文书
2016年社区创先争优活动总结
2016/04/05 职场文书
python爬虫--selenium模块
2021/03/31 Python
Python爬虫 简单介绍一下Xpath及使用
2022/04/26 Python