鼠标悬停和鼠标移出事件是否不匹配?
Can mouseover and mouseout events be mismatched?
我试图跟踪鼠标是否在我的HTML元素内(注意:它也有子元素)。一个简单的解决方案(我现在正在使用)是附加到mouseover/mouseout并计算它们-如果"mouseover"比"mouseouts"更多,那么鼠标应该在
。但是我想知道——这会失败吗?在某些(或多或少奇怪的)情况下,是否可以"跳过"这些事件中的任何一个,从而使我得到一个不匹配的计数?
一些简单的试验没有产生任何这样的情况,但是有很多的边缘情况,我不可能想到所有的。有人遇到过这样的情况吗?
澄清:我有不是遇到这样的问题。我想知道这样的问题是否可能。
添加:一个案例刚刚出现在我的脑海中- mouseover/mouseout在子元素上被阻止在其处理程序中冒泡。我的代码不是这种情况,但仍然有可能。
我也遇到过类似的事情。快把我逼疯了。我得出的假设/结论是,至少在我的情况下,这可能与事件冒泡有关。你在使用jquery吗?仔细检查未压缩的库可能是值得的。如果你真的需要保证。否则,如果你的代码足够灵活,你可以绕过它,我就是这样做的。
冒泡很可能是问题的根源。当鼠标移动到内部元素中时,会得到一个mouseout事件。http://www.quirksmode.org/dom/events/mouseover.html
建议,使用库。它们抽象了不冒泡的mouseenter和mouseleave事件之间的跨浏览器差异。http://api.jquery.com/mouseenter/
如果你不想使用库,在修复计数器之前,你需要自己检查鼠标是否在你跟踪的div内。如果您展示了您拥有的代码,那么向您展示如何修复它就更容易了。
- 高库存时期时间与时区不匹配
- react路由器使用简单的javascript路由器配置来处理不匹配的路径
- Javascript:图像与单选按钮的值不匹配
- 文本区域(jQuery)的结果不匹配
- 如果状态不匹配,则缩小为丑陋
- 为什么我网页的facebook点赞数与该网页的facebook页面不匹配
- 使用jscodeshift添加表达式时,错误{..}与类型字符串不匹配
- JavaScript正则表达式不匹配
- row.entity.xxxx属性doensn'排序后不匹配
- Url.Content中的Url不匹配
- 控件坐标与组坐标不匹配
- 使用正则表达式查找字符串中的不匹配字符
- CSS Media Query 和 Javascript/jQuery 不匹配
- 始终在 jQuery 自动完成中显示特定选项,即使它与输入不匹配
- 如果项目不匹配,则显示变量
- 正则表达式匹配 JQM 路由器插件中的“项目”但不匹配“项目”
- Lodash 从与值数组不匹配的数组中获取项目
- 比较 2 个数组并得到这些变量不匹配
- 鼠标悬停和鼠标移出事件是否不匹配?
- 缩放和平移画布后鼠标坐标不匹配