为什么当鼠标仅移动到内部元素时触发 onMouseOver 事件
Why is onMouseOver event fired when the mouse only moves into an inner element?
当鼠标悬停在内部元素中时,首先触发外部元素的mouseOut
事件,然后触发内部元素的mouseOver
元素,最后触发内部元素的mouseOver
元素。
为什么会这样?因为内部元素在技术上仍然在外部元素的内部,所以鼠标在移动到内部元素时不会离开外部元素。有没有办法防止这种情况发生?
完整示例如下: http://jsfiddle.net/pMCeu/4/
为了避免这种情况,您应该使用mouseenter和mouseleave,而不是mouseover和mouseout。
这是由于事件冒泡。 看看这篇文章以获取更多信息。
嗨,上面的解决方案是正确的和完整的。但您也可以使用鼠标移动事件
相关文章:
- onmouseover事件行为不端
- 在onmouseover事件中更改图像,并为每个事件设置中断/间隔
- 结合onmouseover事件和<a>标签
- Javascript:在每个onmouseover事件之后执行2个函数
- 如何在 JavaScript 中的元素上触发 Onmouseover 事件
- GraphDracula:如何检测onclick和onmouseover事件
- onmouseover事件仅在第二次鼠标悬停后才起作用
- onmouseover事件不起作用
- 如何通过onmouseover事件停止jquery旋转木马
- 从一系列onMouseOver事件中创建一个循环
- 使用JavaScript,为什么我的onmouseover事件没有被触发
- 在Firefox中的onmouseover事件
- 如何添加onmouseover事件javascript
- 为什么我的JavaScript onmouseover事件不火
- jQuery防止onmouseover事件
- Div隐藏链接上的onmouseover事件
- 将onmouseover事件分配给动态生成列表
- 将参数传递给onmouseover事件
- 在类中使用javascript的onmouseover事件的问题
- 在onmouseover事件中播放声音效果