2013-06-24 88 views
0

這是一個非常新手的問題(我很生氣,我無法解決它)。我有一個問題,因爲每當鼠標離開一個容器時觸發一個動作,現在的問題是我有子元素,並且由於某種原因,當我移動到一個子元素時,我的動作被觸發。如何檢查鼠標是否脫離任何子元素?

我基本上有這樣的事情

<li> 
<image> 
<div>content</div> 
</li> 

我想,當我進入我的李,積極當我走出去從中獲取非有效,但我都可以在我的內容輸入和懸停和,任何想法如何做到這一點?

我檢查了這一點,但沒有結果 Prevent onmouseout when hovering child element of the parent absolute div WITHOUT jQuery

感謝

+0

你不希望對兒童元素採取任何行動嗎?你希望它只懸停在父項上? –

+0

mouseleave事件不會觸發嵌套的孩子 - > http://jsfiddle.net/WNgAb/ – adeneo

+0

嗨,當我懸停在家長,我想要顯示的孩子,只是在內容的某些div上做一個.show ,沒有別的,但我可以讓他們與CSS添加一個類在家長,如果是不可能稍後與JavaScript – jpganz18

回答

2

我親自抓,懶惰的出路和使用jQuery的hover方法在設定他們倆一次,而不是使用mousein並單獨鼠標移開。 這讓jQuery的處理與兒童進出,是這樣的:

jQuery("li").hover(function() { 
    //mousein actions 
}, 
function() { 
    //mouseout actions 
} 
); 
1

爲了防止東西從發生盤旋在孩子的時候,就檢查目標實際上是在綁定元素:

$('li').on('mouseenter mouseleave', function(e) { 
    if (e.target === this) { 
     // do stuff here 
    } 
});