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


在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



相关阅读:
JQuery 学习笔记 选择器之六
网页制作前先来看看这些所谓的规范
格式化CSS和精简CSS的在线CSS优化工具
CSS Sprite图片处理技巧
jquery键盘事件使用介绍
如何在linux网卡上添加多个IP
推荐一篇利用th,colgroup,col定义表格样式
Ubuntu 8.04下eclipse和PHP的安装
ASP实现URL编码
如何以及何时使用sIFR
sqlserver 禁用触发器和启用触发器的语句
utf8和unicode编码究竟是什么关系?有何区别?
兼容FireFox 用javascript写的一个画图函数
jquery load()在firefox(火狐)下显示不正常的解决方法
快速导航

Copyright © 2016 phpStudy | 皖ICP备18014864号-4