I have a problem with navigation - I am trying to get an active class on the navigation element and in the sub-menu.
HTML:
<ul id="nav1" class="navigation">
<li class="navigation__active"><a href="#"><i class="zmdi zmdi-home"></i> Home</a></li>
<li class="navigation__sub">
<a href="#"><i class="zmdi zmdi-view-week"></i> About</a>
<ul>
<li><a href="#">History</a></li>
<li><a href="#">Team</a></li>
<li><a href="#">Contact</a></li>
</ul>
</li>
<ul>
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' );
});
You can refer the below working link.
$(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' );
});
});
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.