基于mouseout和mouseover等类似事件的冒泡问题解决方法


Posted in Javascript onNovember 18, 2013

最近写点东西,比较闹心,一个弹出层,上边有其他元素,本意是鼠标离开弹出层时,执行一些动作,但在实际应用中,鼠标离开弹出层中的元素时,也会激活这些动作。试了各浏览器的停止事件冒泡的方法,均无效。

还是咱们javaeye里高人众多,在一个哥们博客中发现了如下代码:

  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);    
     }

这个方法是判断,当前元素是不是要执行mouseout事件的元素,这样就可以避免上述问题。
Javascript 相关文章推荐
基于jquery插件制作左右按钮与标题文字图片切换效果
Nov 07 Javascript
JQuery解析HTML、JSON和XML实例详解
Mar 29 Javascript
JavaScript闭包实例讲解
Apr 22 Javascript
用js格式化金额可设置保留的小数位数
May 09 Javascript
js兼容火狐显示上传图片预览效果的方法
May 21 Javascript
简介JavaScript中的setDate()方法的使用
Jun 11 Javascript
微信小程序之picker日期和时间选择器
Feb 09 Javascript
禁止弹窗中蒙层底部页面跟随滚动的几种方法
Dec 07 Javascript
解决循环中setTimeout执行顺序的问题
Jun 20 Javascript
JavaScript实现拖拽盒子效果
Feb 06 Javascript
基于vue实现微博三方登录流程解析
Nov 04 Javascript
JavaScript实现滑块验证解锁
Jan 07 Javascript
ExtJS自定义主题(theme)样式详解
Nov 18 #Javascript
设为首页和收藏的Javascript代码(亲测兼容IE,Firefox,chrome等浏览器)
Nov 18 #Javascript
jquery cookie的用法总结
Nov 18 #Javascript
JS JSON对象转为字符串的简单实现方法
Nov 18 #Javascript
javascript获取ckeditor编辑器的值(实现代码)
Nov 18 #Javascript
js 页面元素的几个用法总结
Nov 18 #Javascript
封装的jquery翻页滚动(示例代码)
Nov 18 #Javascript
You might like
php 自写函数代码 获取关键字 去超链接
2010/02/08 PHP
析构函数与php的垃圾回收机制详解
2013/10/28 PHP
php计算整个mysql数据库大小的方法
2015/06/19 PHP
php+ajax+json 详解及实例代码
2016/12/12 PHP
win10 apache配置虚拟主机后localhost无法使用的解决方法
2018/01/27 PHP
解决laravel session失效的问题
2019/10/14 PHP
PHPStorm2020.1永久激活及下载更新至2020(推荐)
2020/09/25 PHP
php实现记事本案例
2020/10/20 PHP
一个XML格式数据转换为图表的例子
2010/02/09 Javascript
一个js控制的导航菜单实例代码
2013/12/03 Javascript
jQuery实现radio第一次点击选中第二次点击取消功能
2017/05/15 jQuery
基于zepto.js实现登录界面
2017/10/09 Javascript
微信小程序实现animation动画
2018/01/26 Javascript
Bootbox将后台JSON数据填充Form表单的实例代码
2018/09/10 Javascript
ES6中字符串的使用方法扩展
2019/06/04 Javascript
微信公众号平台接口开发 菜单管理的实现
2019/08/14 Javascript
Vue中使用better-scroll实现轮播图组件
2020/03/07 Javascript
ant-design-vue按需加载的坑的解决
2020/05/14 Javascript
vue实现一个获取按键展示快捷键效果的Input组件
2021/01/13 Vue.js
[58:35]OG vs EG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
Python中类的继承代码实例
2014/10/28 Python
Python打印scrapy蜘蛛抓取树结构的方法
2015/04/08 Python
pip命令无法使用的解决方法
2018/06/12 Python
200行python代码实现2048游戏
2019/07/17 Python
Python+Tensorflow+CNN实现车牌识别的示例代码
2019/10/11 Python
python打开文件的方式有哪些
2020/06/29 Python
python openpyxl模块的使用详解
2021/02/25 Python
浅谈HTML5 Web Worker的使用
2018/01/05 HTML / CSS
三年级评语大全
2014/04/23 职场文书
2014年科普工作总结
2014/12/06 职场文书
2015年乡镇工会工作总结
2015/05/19 职场文书
天鹅湖观后感
2015/06/09 职场文书
2016党员学习《反对自由主义》心得体会
2016/01/22 职场文书
银行柜员优质服务心得体会
2016/01/22 职场文书
员工保密协议范本,您一定得收藏!很有用!
2019/08/08 职场文书
k-means & DBSCAN 总结
2021/04/27 Python