关于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 相关文章推荐
用js自动判断浏览器分辨率的代码
Jan 28 Javascript
javascript优先加载笔记代码
Sep 30 Javascript
javascript StringBuilder类实现
Dec 22 Javascript
JavaScript 封装Ajax传递的数据代码
Jun 05 Javascript
读jQuery之十三 添加事件和删除事件的核心方法
Aug 23 Javascript
js实现单一html页面两套css切换代码
Apr 11 Javascript
javascript动态向网页中添加表格实现代码
Feb 19 Javascript
js利用正则表达式检验输入内容是否为网址
Jul 05 Javascript
JS 动态加载js文件和css文件 同步/异步的两种简单方式
Sep 23 Javascript
JavaScript函数节流和函数防抖之间的区别
Feb 15 Javascript
AngularJs 禁止模板缓存的方法
Nov 28 Javascript
Vue数据双向绑定原理及简单实现方法
May 18 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
smarty section简介与用法分析
2008/10/03 PHP
PHP调用VC编写的COM组件实例
2014/03/29 PHP
php使用cookie保存用户登录的用户名实例
2015/01/26 PHP
JS 毫秒转时间示例代码
2013/09/22 Javascript
javascript实现颜色渐变的方法
2013/10/30 Javascript
JS控制一个DIV层在指定时间内消失的方法
2014/02/17 Javascript
JavaScript中的单引号和双引号报错的解决方法
2014/09/01 Javascript
jQuery多媒体插件jQuery Media Plugin使用详解
2014/12/19 Javascript
jQuery实现瀑布流的取巧做法分享
2015/01/12 Javascript
使用CamanJS在Web页面上处理图像的技巧
2015/08/18 Javascript
简单谈谈ES6的六个小特性
2016/11/18 Javascript
浅谈Vue SSR 的 Cookies 问题
2017/11/20 Javascript
vue项目中,main.js,App.vue,index.html的调用方法
2018/09/20 Javascript
微信小程序实现类似微信点击语音播放效果
2020/03/30 Javascript
Vue+elementui 实现复杂表头和动态增加列的二维表格功能
2019/09/23 Javascript
JQuery 实现文件下载的常用方法分析
2019/10/29 jQuery
微信小程序仿淘宝热搜词在搜索框中轮播功能
2020/01/21 Javascript
微信小程序点击按钮动态切换input的disabled禁用/启用状态功能
2020/03/07 Javascript
jQuery开发仿QQ版音乐播放器
2020/07/10 jQuery
Python中的高级数据结构详解
2015/03/27 Python
Python3读取文件常用方法实例分析
2015/05/22 Python
利用python实现xml与数据库读取转换的方法
2017/06/17 Python
Python3 加密(hashlib和hmac)模块的实现
2017/11/23 Python
解决Python运行文件出现out of memory框的问题
2018/12/03 Python
使用python serial 获取所有的串口名称的实例
2019/07/02 Python
opencv 图像轮廓的实现示例
2020/07/08 Python
Python 调用C++封装的进一步探索交流
2021/03/04 Python
HTML5里的placeholder属性使用实例和美化显示效果的方法
2014/04/23 HTML / CSS
HTML5 Canvas中使用路径描画二阶、三阶贝塞尔曲线
2015/01/01 HTML / CSS
如何将字串String转换成整数int
2015/02/21 面试题
医院门卫岗位职责
2013/12/30 职场文书
拾金不昧的表扬信
2014/01/16 职场文书
青年文明号创建承诺
2014/03/31 职场文书
2014年班主任工作总结
2014/11/08 职场文书
投标承诺函范文
2015/01/21 职场文书
工程部部长岗位职责
2015/02/12 职场文书