2012-10-13 27 views
0

這裏是我的功能:下拉菜單不斷上升和下降

function dropmenu() { 
    $(".dropdownitem").show('slow'); 
} 
function hidemenu() { 
    $(".dropdownitem").hide('slow'); 
} 

,這裏是我的下拉菜單:

<div id="dropdown" class="ns" onmouseover="dropmenu()" onmouseout="hidemenu()"> 
    <p id="dropper">Shortcut Menu</p> 
    <p class="dropdownitem">Shortcut menu item</p> 
    <p class="dropdownitem">Something</p> 
    <p class="dropdownitem">Seomthing else</p> 
    <p class="dropdownitem">Test menu item</p> 
    <p class="dropdownitem">More testing</p> 
    <p class="dropdownitem">Stuff</p> 
    <p class="dropdownitem">More stuff</p> 
</div> 

的問題是,當我鼠標和出的快捷菜單,它保持上下和上下和上下和...

什麼問題?

回答

1

stop

function dropmenu() { 
    $(".dropdownitem").stop.(1,1).show('slow'); 
} 
function hidemenu() { 
    $(".dropdownitem").stop(1,1).hide('slow'); 
} 
+0

嗯......當我做我的菜單甚至不工作了...它不擴展,當我把鼠標放在它上面時 – Doorknob

+0

沒關係,你的代碼在這裏有一段額外的時間「'$(」。dropdownitem「)。stop。(1,1).show('slow');'當我刪除它的作品!謝謝! – Doorknob

+0

等一下,有一個問題。當我將鼠標放在下拉文本上時,它會一直閃爍。 ??? – Doorknob

3

elclanrs回答會修復反彈,另一種解決方案是把一切都在一個應該到下拉

<div id="dropdown" class="ns" onmouseover="dropmenu()" onmouseout="hidemenu()"> 
<div class="dropdownshow"> 
    <p id="dropper">Shortcut Menu</p> 
    <p class="dropdownitem">Shortcut menu item</p> 
    <p class="dropdownitem">Something</p> 
    <p class="dropdownitem">Seomthing else</p> 
    <p class="dropdownitem">Test menu item</p> 
    <p class="dropdownitem">More testing</p> 
    <p class="dropdownitem">Stuff</p> 
    <p class="dropdownitem">More stuff</p> 
</div> 
</div> 

則顯示整個下拉DIV

function dropmenu() { 
$(".dropdownshow").show('slow'); 
} 
一個div

$(document).on("mouseover", "div.overout" , function() { 
    $(".dropdownshow").show('slow');  
    }).mouseout(function(){ 
     $(".dropdownshow").hide('slow'); 
    }); 

你在同一時間引起反彈將動畫7個單獨的元素之前,這將只適用於1