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对象的函数
Dec 22 Javascript
lyhucSelect基于Jquery的Select数据联动插件
Mar 29 Javascript
JavaScript实现快速排序的方法
Jul 31 Javascript
jQuery根据name属性进行查找的用法分析
Jun 23 Javascript
轻松搞定js表单验证
Oct 13 Javascript
常用jQuery选择器汇总
Feb 02 Javascript
JavaScript函数节流和函数防抖之间的区别
Feb 15 Javascript
Vue Spa切换页面时更改标题的实例代码
Jul 15 Javascript
javaScript中的空值和假值
Dec 18 Javascript
微信小程序开发之路由切换页面重定向问题
Sep 18 Javascript
小程序登录态管理的方法示例
Nov 13 Javascript
JavaScript 实现HTML DOM增删改查操作的常见方法详解
Jan 04 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
解析Extjs与php数据交互(增删查改)
2013/06/25 PHP
php链表用法实例分析
2015/07/09 PHP
Session 失效的原因汇总及解决丢失办法
2015/09/30 PHP
php使用高斯算法实现图片的模糊处理功能示例
2016/11/11 PHP
yii框架结合charjs实现统计30天数据的方法
2020/04/04 PHP
在IE中调用javascript打开Excel的代码(downmoon原作)
2007/04/02 Javascript
JavaScript iframe的相互操作浅析
2009/10/14 Javascript
js获取电脑分辨率的思路及操作
2013/11/22 Javascript
JS生成不重复的随机数组的简单实例
2016/07/10 Javascript
JS在Chrome浏览器中showModalDialog函数返回值为undefined的解决方法
2016/08/03 Javascript
xmlplus组件设计系列之文本框(TextBox)(3)
2017/05/03 Javascript
微信小程序 跳转传递数据的实例
2017/07/06 Javascript
关于vue单文件中引用路径的处理方法
2018/01/08 Javascript
vue使用Element组件时v-for循环里的表单项验证方法
2018/06/28 Javascript
微信小程序实现自定义picker选择器弹窗内容
2020/05/26 Javascript
vue.js 实现评价五角星组件的实例代码
2018/08/13 Javascript
一些手写JavaScript常用的函数汇总
2019/04/16 Javascript
关于微信小程序map组件z-index的层级问题分析
2019/07/09 Javascript
vue 实现路由跳转时更改页面title
2019/11/05 Javascript
vue项目查看vue版本及cli版本的实现方式
2020/10/24 Javascript
[03:46]DAC趣味视频-中文考试.mp4
2017/04/02 DOTA
Python实现复杂对象转JSON的方法示例
2017/06/22 Python
利用python爬取斗鱼app中照片方法实例
2017/12/03 Python
tensorflow: variable的值与variable.read_value()的值区别详解
2018/07/30 Python
python实现将多个文件分配到多个文件夹的方法
2019/01/07 Python
Python玩转Excel的读写改实例
2019/02/22 Python
Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)
2020/01/03 Python
Python3.9新特性详解
2020/10/10 Python
HTML5和CSS3让网页设计提升到下一个高度
2009/08/14 HTML / CSS
Html5实现用户注册自动校验功能实例代码
2016/05/24 HTML / CSS
AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代码
2020/08/19 HTML / CSS
HTML5输入框下拉菜单功能的示例代码
2020/09/08 HTML / CSS
Strathberry苏贝瑞中国官网:西班牙高级工匠手工打造
2020/10/19 全球购物
产品销售员岗位职责
2013/12/18 职场文书
领导干部个人整改措施落实情况汇报
2014/10/29 职场文书
Go语言-为什么返回值为接口类型,却返回结构体
2021/04/24 Golang