关于Event Listener事件(addListener)和Event inline事件(onclick)区别的实例
来源:互联网 发布:php基本知识 编辑:程序博客网 时间:2024/06/10 13:41
最近做的一个项目中需要实现一个功能,判断鼠标停放区域,根据不同的区域范围,滚动鼠标滚轮时,元素移动的距离长短不同。
mouseover事件(){ 获取鼠标焦点坐标; 判断鼠标焦点所在区域范围; mousewheel鼠标滚动事件(){ alert("test"); };}
在实现的时候,鼠标滚动事件可以用onmousewheel,也可以用addlistener,但实现出来是存在差别的。(先不考虑浏览器兼容问题)
1.当使用addlistener时,如果鼠标移出元素的作用范围,再移动回元素的作用范围后,滚动一下滚轮,会发现会弹出多次alert警告,而且,每移出移回一次,就多出现一次alert。
原因:由于addlistener可以支持给元素绑定多个事件。因此,当鼠标在元素作用范围移入移出时,鼠标虽然没有发生滚动。addlistener却给元素多增加了一次绑定事件。这样,在不移动滚轮的情况下,多移入移出一次,就多绑定一次事件,从而多出现一次alert。
2.在使用onmousewheel时,由于Event 内联事件只会给元素绑定一个事件,前面的会被后面的覆盖掉。因此不会出现随着移入移出,alert次数增多的情况。
可以参考链接中的文章。
跳出这个问题,单独说这类多种事件同时监听的情况:最好还是一个事件单独写成一个函数,避免套用的情况。
0 0
- 关于Event Listener事件(addListener)和Event inline事件(onclick)区别的实例
- Android事件监听器Event Listener
- 阻止事件冒泡,阻止默认事件,event.stopPropagation()和event.preventDefault(),return fal的区别
- node事件监听当中的on和addListener的区别
- node事件监听当中的on和addListener的区别
- 关于事件event
- C#事件(event)的一个实例
- Event事件处理机制的实例应用
- Event 事件和托管
- event事件中ie和标准dom的区别
- Android事件监听器(Event Listener)
- Android事件监听器(Event Listener)
- 关于VB.NET的事件(event)(一)
- 关于VB.NET的事件(event)(二)
- jq的event事件
- javascript的事件(event)
- SWT的Event(事件)
- msyql的事件event
- js进阶02、构造函数的继承者们
- java基础5
- 负载均衡之LVS+keepalived
- SDL介绍
- android 调用系统相册选取照片或者打开相机拍照获取图片,返回时回到手机桌面,然后才会跳转到当前activity
- 关于Event Listener事件(addListener)和Event inline事件(onclick)区别的实例
- 轮询与抢占式任务调度区别
- (三)数据库查询
- 模拟双链表
- MongoDB 查询文档(二)
- md5与string.Equals的效率差距到底有多大
- VirtualBox更改虚拟硬盘 VDI文件空间大小的方法(设置的硬盘小了)
- 名企笔试:好未来2017秋招笔试(连续最长的数字串)2017-03-05 算法爱好者
- C++ — 全特化和偏特化