2010-07-09 103 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