javascript mouseover、mouseout停止事件冒泡的解决方案


Posted in Javascript onApril 07, 2009

在IE里有onmouseleave和onmouseenter, 而对于要兼容各大浏览器的Web开发人员来说还是一件头疼的事。
虽然网上已经有针对Mozilla Firefox的一些计策,但代码量也是不容乐观的。
想寻求比较好的解决方案,于是就翻遍了国内的大小网站,终一无所获,不得不硬着头皮去读国外网站,结果是理想的,因为W3C里有relatedTarget,于是就有了下边的解决方案:

function isMouseLeaveOrEnter(e, handler) { 
if (e.type != 'mouseout' && e.type != 'mouseover') return false; 
var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement; 
while (reltg && reltg != handler) 
reltg = reltg.parentNode; 
return (reltg != handler); 
}

在onmouseover和onmouseout里做如上判断。
作者:lxsgoodluck
Javascript 相关文章推荐
Javascript 解疑
Nov 11 Javascript
2014年50个程序员最适用的免费JQuery插件
Dec 15 Javascript
jQuery实现跨域iframe接口方法调用
Mar 14 Javascript
JavaScript驾驭网页-获取网页元素
Mar 24 Javascript
jQuery实现的网页换肤效果示例
Sep 20 Javascript
vue页面使用阿里oss上传功能的实例(一)
Aug 09 Javascript
AngularJS实现表单元素值绑定操作示例
Oct 11 Javascript
详解Chai.js断言库API中文文档
Jan 31 Javascript
用node开发并发布一个cli工具的方法步骤
Jan 03 Javascript
vue-for循环嵌套操作示例
Jan 28 Javascript
jQuery实现的上拉刷新功能组件示例
May 01 jQuery
解决vue 给window添加和移除resize事件遇到的坑
Jul 21 Javascript
javascript 兼容鼠标滚轮事件
Apr 07 #Javascript
javascript 有趣而诡异的数组
Apr 06 #Javascript
在JavaScript中,为什么要尽可能使用局部变量?
Apr 06 #Javascript
JavaScript 在各个浏览器中执行的耐性
Apr 06 #Javascript
javascript 获取图片颜色
Apr 05 #Javascript
Mozilla 表达式 __noSuchMethod__
Apr 05 #Javascript
关于javascript document.createDocumentFragment()
Apr 04 #Javascript
You might like
一个用于MySQL的PHP XML类
2006/10/09 PHP
请离开include_once和require_once
2013/07/18 PHP
php二维数组用键名分组相加实例函数
2013/11/06 PHP
laravel框架中间件 except 和 only 的用法示例
2019/07/12 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
2020/03/23 PHP
IE与FireFox的兼容性问题分析
2007/04/22 Javascript
javascript Array数组对象的扩展函数代码
2010/05/22 Javascript
使用jQuery全局事件ajaxStart为特定请求实现提示效果的代码
2010/12/30 Javascript
jQuery建立一个按字母顺序排列的友好页面索引(兼容IE6/7/8)
2013/02/26 Javascript
jquery实现table鼠标经过变色代码
2013/09/25 Javascript
JS动态添加与删除select中的Option对象(示例代码)
2013/12/25 Javascript
理解javascript对象继承
2016/04/17 Javascript
原生js实现水平方向无缝滚动
2017/01/10 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
vue-cli webpack 开发环境跨域详解
2017/05/18 Javascript
利用JavaScript如何查询某个值是否数组内
2017/07/30 Javascript
Vue.js简易安装和快速入门(第二课)
2017/10/17 Javascript
JS中touchstart事件与click事件冲突的解决方法
2018/03/12 Javascript
在vue中使用防抖和节流,防止重复点击或重复上拉加载实例
2019/11/13 Javascript
使用webpack和rollup打包组件库的方法
2021/02/25 Javascript
[05:07]DOTA2英雄梦之声_第14期_暗影恶魔
2014/06/20 DOTA
python抽象基类用法实例分析
2015/06/04 Python
Django的数据模型访问多对多键值的方法
2015/07/21 Python
Python使用zip合并相邻列表项的方法示例
2018/03/17 Python
Python 文本文件内容批量抽取实例
2018/12/10 Python
python变量赋值方法(可变与不可变)
2019/01/12 Python
numpy.where() 用法详解
2019/05/27 Python
Python Web框架之Django框架Model基础详解
2019/08/16 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
2019/12/20 Python
python实现人机猜拳小游戏
2020/02/03 Python
自定义Django_rest_framework_jwt登陆错误返回的解决
2020/10/18 Python
如何通过python计算圆周率PI
2020/11/11 Python
俄罗斯香水和化妆品网上商店:NOTINO.ru
2019/12/17 全球购物
创意爱尔兰礼物:Creative Irish Gifts
2020/01/29 全球购物
公司车队管理制度
2015/08/04 职场文书
同学联谊会邀请函
2019/06/24 职场文书