切换多个项目的课程

时间:2013-05-23 13:03:14

标签: jquery menu

我需要在打开的菜单项上切换'bg'类。如果它们一次被激活和停用,它可以正常工作。但是当另一个已经被激活时打开一个,那么该类不会被正确添加/删除。欢呼声。

http://jsfiddle.net/6a3eZ/31/

jQuery(document).ready(function(){                  
    jQuery('.menu ul').hide();
    jQuery('.menu li.sub').click(function() {
        jQuery(this).find('a:first').toggleClass('bg');
        jQuery(this).find('ul:first').toggle(0)
               .end().siblings('li').find('ul').hide(0);
    });
});

1 个答案:

答案 0 :(得分:3)

这是一个有效的版本:http://jsfiddle.net/6a3eZ/39/

它使用此代码:

jQuery('.menu li.sub').click(function () {
    var target = jQuery(this).children('a');

    if(target.hasClass('bg')){
        target.removeClass('bg');
    }else{
        jQuery('.menu-item > a').removeClass('bg');
        target.addClass('bg');
    }

    jQuery(this).find('ul:first')
                .toggle(0)
                .end()
                .siblings('li')
                .find('ul')
                .hide();
});