我已經編碼了一個導航菜單,其中嵌套下拉菜單 - 我已經編寫了菜單,在懸停時滑動並且工作正常。jQuery擴展菜單錯誤
但是,還有一個'顯示所有'鏈接,點擊時會展開所有子菜單並將新類應用於容器以便將菜單填充。
單擊可以擴大菜單的範圍,但第二次點擊會改變外觀,因爲它應該在一瞬間改變外觀,方法是刪除類,就好像它再次觸發該功能一樣。我的代碼如下 - 任何幫助將不勝感激!安迪
// == MENU SHOW ALL TOGGLE
// show pointer
$('#menu li#show-all').hover(function(){
$(this).css({'cursor' : 'pointer'});
});
$('#menu-container').addClass('show-single');
function toggleheight(){
if ($('#menu-container').hasClass('show-single')) {
$('#menu li').not('#show-all').fadeOut(function(){
$('#menu').animate({
height : '300px'
}, function(){
$('#menu-container').removeClass('show-single').addClass('show-all');
$('#menu li').not('#show-all').fadeIn();
});
});
}else {
$('#menu li').not('#show-all').fadeOut(function(){
$('#menu-container').removeClass('show-all').addClass('show-single');
$('#menu').animate({
height : '16px'
}, function(){
$('#menu li').not('#show-all').fadeIn();
});
});
}
}
$('#menu li#show-all').click(function(){
$(toggleheight);
});
編輯:擴展菜單,盤旋一個鏈接,然後搬回並單擊顯示所有的鏈接確實恢復菜單,因爲它應該 - 但點擊「顯示所有」鏈接,一旦擴大再次萎縮沒有導航離開似乎重新觸發功能
你可以發佈HTML嗎? – glomad