2013-12-10 85 views
0

我試圖創建一個簡單的子導航下拉菜單。當用戶將鼠標懸停在觸發器上時,#子導航會使用下拉菜單淡入,然後當用戶移開鼠標時,它將淡出。這確實發生了,但是當鼠標移過嵌套的li時,它會再次消失,我不知道爲什麼?jQuery懸停和鼠標移出下拉菜單

<ul id="sub-nav"> 
    <li class="sub sub-profile"><a href="#">Your Profile</a></li> 
    <li class="sub sub-upgrade"><a href="#">Upgrade</a></li> 
    <li class="sub sub-signout"><a class="last" href="#">Sign Out</a></li> 
</ul> 

$('#header-user a').hover(function() { 
     $('#sub-nav').fadeIn('400'); 
    }); 

    $('#sub-nav').mouseout(function(){ 
     $('#sub-nav').fadeOut('400'); 
    }); 

任何幫助,將不勝感激,傑克。

+1

這是您要acheive什麼? http://jsfiddle.net/CW7Tk/1/ – Turnip

+0

是的,這已修復它!我沒有想過要使用mouseenter/mouseleave :) –

回答

1

試試這個,希望這將有助於

$('#header-user a').mouseout(function(){ 
    $('#sub-nav').fadeOut('400'); 
}); 

你也可以試試:

$("#header-user a").hover(
    function() { 
     $('#sub-nav').fadeIn('400'); 
    }, 
    function() { 
     $('#sub-nav').fadeOut('400'); 
    } 
); 

OR

$("#header-user a").on('mouseenter',function(){ 
    $('#sub-nav').fadeIn('400'); 
}); 
$("#header-user a").on('mouseleave',function(){ 
    $('#sub-nav').fadeOut('400'); 
}); 
+0

當您將鼠標移出觸發器時,這會使下拉淡出,當您將鼠標從下拉導航欄移開時,我也希望它淡出。 –

+0

謝謝,第三個人工作 –