`
- 浏览:
74192 次
- 性别:
- 来自:
杭州
-
IE6/7下面mouseover和mouseout鼠标事件的一些问题
一.概述
1.在IE6下面使用mouseover和mouseout事件时,如果被注册事件的元素下面有一些子元素,这时候如果鼠标在当前元素的子元素上滑动时,鼠标的事件也会被触发,我们就是想阻止这个中情形下面鼠标事件的触发。
2.使用了mouseleave之后为什么鼠标没有移出元素区域,但是事件依然响应了呢?
二.问题的解释
1.对于第一个问题,可以解释为是IE下面的一个BUG,目前尽量不要使用mouseover和mouseout事件,用mouseenter和mouseleave事件来代替这两个事件,可以防止上面问题的出现。
2.遇见第一个问题之后,采用了mouseleave事件,但是我的效果还是没有达到,在IE6/7下面依然出现鼠标还没有移出去,但是事件却触发了,仔细看了看触发事件的原因是被这个元素盖住的元素下面的一些元素注册了鼠标移动上去的事件,由于当前元素的背景是透明的,导致下面元素的事件可以在当前元素的上移动鼠标时被触发,这样当前元素的鼠标滑出事件也就被触发了。解决的方法是设置当前元素的背景,把当前元素变成非透明的就可以了。
3.关于事件冒泡,加入一个div我们注册了click事件,然后在这个div内部又有一个嵌套的div我们也注册了click事件,这时候如果我们点击内部的div之后,不仅会触发内部div元素的click事件,也会触发外部div的click事件,这就是所谓的事件冒泡,当前可以在内部元素的事件回调函数中去阻止事件的派发,防止出现事件冒泡。在平时开发的过程中要注意一下这一点。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
最近在做的在线考试和课程商城都遇到这样的问题:就是鼠标滑过的时候出现一个层,当鼠标滑到当前层的话mouseover和mouseout在低版本的浏览器会出现闪动的现象,解决这个现象的办法有许多,不过我觉得有一种是最简单...
在ie下有mouseenter 与 mouseleave事件来替代mouseover 和 mouseout。 网上很多说法,这两个事件只有ie支持,其他浏览器不支持。 但是我在最新版本的火狐与谷歌都支持了mouseenter 与 mouseleave!!!!! 另外ie是...
jquery解决办法: jquery的mouseenter和mouseleave方法已经修复了这个问题,可以直接用来替代mouseover和mouseout 不过有个mouseenter和mouseleave有个小问题是,让鼠标从文档外直接进入绑定事件的元素时,mouse...
以前一直以为在jquery中其实mouseover和mouseout两个事件等于hover事件。两个没什么区别,应该是一样的。但昨天一个动画效果才让我见识了,这两个并不能等同。 <div class=img></div> <div class=text></div> </...
主要介绍了JS中mouseover和mouseout多次触发问题如何解决的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
停止事件冒泡在各浏览器中已经有相应的解决方案,但是对于mouseover和mouseout却显得力不从心。
鼠标事件即鼠标操作点击图表的图形(如click、dblclick、contextmenu)或hover图表的图形(如mouseover、mouseout、mousemove)时触发的事件。 在ECharts中,用户的任何操作,都可能会触发相应的事件。在ECharts中...
我想实现的目标:当鼠标进入黑色框时,橙色框执行淡入动画;当黑色框范围移动的时候(即使经过粉色框,动画仍然不被触发);当鼠标移出的时候,橙色方块消失。 遇到的问题阐述:当鼠标移入黑色框的...mouseover mouse
先了解几个事件对象属性target 指事件源对象,点击嵌套元素最里层的某元素,该元素...relativeTarget 指事件相关的元素,一般用在mouseover,mouseout事件中。IE6/7/8中对应的是fromElement,toElement。mouseenter ,m
主要介绍了关于mouseout和mouseover等类似事件的冒泡问题解决方法。需要的朋友可以过来参考下,希望对大家有所帮助
很多人在使用jQuery实现鼠标悬停效果时,一般都会用到mouseover和mouseout这对事件。而在实现过程中,可能会出现一些不理想的状况。 先看下使用mouseout的效果: 先看下使用mouseout的效果:</p> 使用了mouseout...
不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件 只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件 我们通过一个案例观察下问题: 给一个嵌套的层级绑定mouseout事件,会发现mouseout事件...