DOM同时设置mouseover与mouseout事件控制元素显示时出现闪烁问题
2016-10-09 16:14
381 查看
在给一个DOM元素同时设置mouseover与mouseout事件来控制另一元素显示与隐藏式时会出现闪烁问题。
这是由js事件的冒泡引起的,在网上找了很多解决方案,经测试很多都没有效果
。
最终找到一个简单粗暴的解决方法:mouseover事件不做改变(一般是控制目标元素的显示),但是不再设置mouseout 事件,而是给目标元素绑定一个mouseleave事件,$("目标元素id").bind("mouseleave",
function() { $(this).hide(); });mouseleave
事件实在jQuery中定义,需要引入JQuery。
在很多文章中看到的解决方法是将 mouseover 改成 mouseenter,mouseout 改成mouseleave。
还有一些其他方案参考:http://blog.sina.com.cn/s/blog_6261f86901011mub.html(设置定时器等)
这是由js事件的冒泡引起的,在网上找了很多解决方案,经测试很多都没有效果
。
最终找到一个简单粗暴的解决方法:mouseover事件不做改变(一般是控制目标元素的显示),但是不再设置mouseout 事件,而是给目标元素绑定一个mouseleave事件,$("目标元素id").bind("mouseleave",
function() { $(this).hide(); });mouseleave
事件实在jQuery中定义,需要引入JQuery。
在很多文章中看到的解决方法是将 mouseover 改成 mouseenter,mouseout 改成mouseleave。
还有一些其他方案参考:http://blog.sina.com.cn/s/blog_6261f86901011mub.html(设置定时器等)
相关文章推荐
- jquery 当DIV有子元素时,mouseover和mouseout事件同时使用时,会产生闪烁的情况
- jQuery事件 mouseover方法与mouseout方法实现鼠标移进显示移出消失的效果 (css控制span标签)
- jQuery中对同一个元素使用mouseover和mouseout产生闪烁问题
- android中为listview同时设置长按项onItemLongClick和点击事件onItemClick出现的问题
- 关于mouseout和mouseover等等类似事件的冒泡问题
- 基于mouseout和mouseover等类似事件的冒泡问题解决方法
- javascript的高级使用,设置页面元素是否相应事件与显示“正在处理”对话框
- jquery FireFox中滚动条设置为auto时,存在一个滞后显示的问题,如何获得滚动条的加载完毕事件或显示事件
- 浮动层div没有内容或没有设置背景在IE下click,mouseover,mouseout等事件失效
- 经过绑定元素时会多次触发mouseover和mouseout事件
- 基于mouseout和mouseover等类似事件的冒泡问题解决方法
- DropDownList 前台 onchange 事件js控制显示隐藏元素
- jQuery因mouseover,mouseout冒泡产生的闪烁问题
- 经过绑定元素时会多次触发mouseover和mouseout事件
- jquery下动态显示jqGrid以及jqGrid的属性设置容易出现问题的解决方法
- textview中有很多行,我只让它显示三行,最后显示...,我设置了android:maxLines="3"和android:ellipsize="end",但出现的问题是只显示两行就显示“...”
- [C] 跨平台使用TCHAR——让Linux等平台也支持tchar.h,解决跨平台时的格式控制字符问题,多国语言的同时显示(兼容vc/gcc/bcb,支持Windows/Linux/Mac)
- Android的EditText设置光标一直显示而不闪烁的问题
- 动态生成DOM元素绑定click事件无效问题
- IE6下显示隐藏某个Element时出现“闪烁”问题的解决方案