I'm trying to make a simple slide down menu when the top level menu item is clicked. The functionality I'm looking for is when a top level menu item is clicked all other sub menus slides up and the one that is clicked slides down, and when you click the same menu item the sub menu slides up.
The problem I'm having is targeting the child ul tags
<ul>
<li class="main-menu-item">
<a href="#"></a>
<ul class="sub-menu">
<li>Stuff</li>
</ul>
</li>
</ul>
Here's my jQuery
(function( $ ) {
'use strict';
$(function() {
var menuItem = $('#nav__menu li.main-menu-item'),
subMenuItem = $('#nav__menu ul.sub-menu' );
// setup
menuItem.parents().attr('tabIndex',-1).attr('aria-haspopup',true);
subMenuItem.attr('aria-hidden', true);
menuItem.on('click', function(e) {
e.preventDefault();
$(this).toggleClass('active');
$(this).siblings('.active').removeClass('active');
});
subMenuItem.each(function() {
if($(this).parents().hasClass('active')) {
$(this).find(subMenuItem).attr('aria-hidden', false).slideDown();
} else {
$(this).find(subMenuItem).attr('aria-hidden', true).slideup();
}
});
});
})( jQuery );