2010-07-09 101 views
2

我有一个工具提示功能,其中有2个元素的鼠标事件。 这两个元素是父子(一个到另一个)。jQuery - 检查鼠标光标是否位于2个元素的内部(来自鼠标悬停事件)

在这个事件中,我需要检查鼠标光标是否在这两个元素之外。我怎样才能做到这一点?

+1

我有点困惑。在元素上的'mouseover'事件中,你需要检查鼠标光标是否在两个元素之外?你的意思是*里面有*吗?或者你的意思是'mouseout'事件而不是'mouseover'? – user113716 2010-07-09 13:07:35

+0

是的,mouseout,我的错误:) – Alex 2010-07-09 13:08:31

回答

3

相反的mouseout可以使用mouseleave此:

$("#parentID").mouseleave(function() { 
    alert("you have left the parent"); 
}); 

mouseout火灾进入一个孩子的时候,mouseleave没有,离开该事件被绑定到父元素时,它仅火灾。

从文档:

鼠标离开事件从鼠标移开区别它处理事件冒泡的方式。如果在此示例中使用鼠标移出,那么当鼠标指针移出Inner元素时,处理程序将被触发。这通常是不受欢迎的行为。另一方面,事件只在鼠标离开绑定元素时触发其处理程序,而不是其后代。

+0

谢谢,那作品:D – Alex 2010-07-09 13:07:57