将活动类添加到导航项

我有导航问题 – 我试图在导航元素和子菜单中获得一个活动类。

这是一个小提琴。

HTML:

CSS:

 .navigation__active>a, .navigation__sub--active>a { color: red; } 

JavaScript的:

 ( '#nav1 .navigation_active li' ).on( 'click', function () { $( '#nav1 .navigation_sub' ).find( 'li.navigation_active' ).removeClass( 'navigation_active' ); $( this ).parent( 'li' ).addClass( 'navigation_active' ); }); 

您可以参考以下工作链接。

 $(function(){ $( '#nav1' ).click(function (e) { $(this).children().each(function(){ $(this).removeClass('navigation__active'); }); $('#nav1 .navigation__sub' ).find( 'li.navigation__active').removeClass( 'navigation__active' ); $(e.target).parent( 'li' ).addClass( 'navigation__active' ); }); }); 

https://jsfiddle.net/e3qLb1zr/24/

这很好用,也选择菜单和子菜单;

 $( "li" ).click(function(e) { $("li").removeClass("navigation__active"); $(e.target).parent("li").addClass("navigation__active"); $(e.target).parent("li").parents("li").addClass("navigation__active"); }); 
 .navigation__active>a, .navigation__sub--active>a { color: red; }