jquery垂直滑动菜单

时间:2011-04-04 17:47:25

标签: javascript jquery navigation

尝试从this tutorial实施菜单,但是当一个子菜单切换打开以在另一个子菜单打开时自动关闭自己时,不知道如何制作。 thx

2 个答案:

答案 0 :(得分:0)

您可以使用选择器在this.click事件上获取“Not This”,该事件将返回所有其他菜单,并允许您关闭它们。

提供一些源代码可能会给你一个更好的答案。

答案 1 :(得分:0)

您可以在打开新的切换之前关闭所有打开的切换。

    $(document).ready(function(){
    hideMenus();

    $('.toggle').click(function(){
        var menu = $(this);
        hideMenus();

        if (menu.hasClass('toggle-open')) {     
            menuHide(menu);
        }else{
            menuShow(menu);
        }
    });
});
function hideMenus(){
    $('.toggle').each(function(){
        menuHide($(this));
    });
}

function menuHide(menu){ 
    menu.removeClass('toggle-open').addClass('toggle-closed').empty('').append('+').parents('li').children('ul').slideUp(250); 
    menu.parent('.menutop').removeClass('menutop-open').addClass('menutop-closed'); 
} 
function menuShow(menu){ 
    menu.parent('.menutop').removeClass('menutop-closed').addClass('menutop-open'); 
    menu.removeClass('toggle-closed').addClass('toggle-open').empty('').append('–').parents('li').children('ul').slideDown(250); 
}