2015-02-11 71 views

回答

1

這是由於你的動畫項目的填充。基本上,jQuery必須對高度和填充都進行動畫處理,這使得它不太流暢。看到這個版本沒有填充: https://jsfiddle.net/54m54jq3/1/ 我建議在每個菜單項中添加另一個div,並對其應用填充。

編輯: https://jsfiddle.net/54m54jq3/2/

$('.dropdown').on('click', function() { 
    var continent; 
    $('.dropdown').not(this).slideToggle(300, function() { 
     continent = $(this).clone().children().remove().end().text().toLowerCase().trim(); 
     continent = '.' + continent; 
     console.log(continent); 
     $(continent).slideToggle(300); 
    }); 
}); 
+0

點擊周圍的下拉菜單中多了幾分的無填充:直到別人都完成了隱藏嘗試在你的JS使用回調,這樣你就不會打開一個菜單小提琴你已經做出了,你會看到問題仍然存在。感謝您的幫助。 – jckly 2015-02-11 15:11:54

+0

請看我更新的答案。我認爲現在看起來更加流暢。 – kthornbloom 2015-02-11 15:22:41

+0

同意!在更新後的答案中,動畫看起來更平滑,但通過單擊時顯示錯誤的孩子li,下拉顯示異常。 – jckly 2015-02-11 15:36:31