当鼠标只移动到内部元素时,为什么会触发onMouseOver事件?

时间:2011-05-16 00:54:45

标签: dom javascript-events onmouseover onmouseout

当鼠标悬停在内部元素中时,首先触发外部元素的mouseOut事件,然后触发内部元素的mouseOver元素,然后最后触发内部元素的mouseOver元素。

为什么会这样?因为内部元素在技术上仍然在外部元素内部,所以鼠标在移动到内部元素时不会离开外部元素。有没有办法防止这种情况?

此处的完整示例:http://jsfiddle.net/pMCeu/4/

2 个答案:

答案 0 :(得分:0)

要避免这种情况,您应该使用mouseenter和mouseleave而不是mouseover和mouseout。

这是由于事件冒泡。请查看this帖子以获取更多信息。

答案 1 :(得分:0)

您好,以上解决方案是正确和完整的。 但您也可以使用mousemove事件