drop down menu - jQuery e.prevent default applies for children li too -
i beginner jquery. created own dropdown list, , problem when create e.preventdefault(); dropdown applies children too, , avoid that
html
<div id="wrapper" class="container"> <nav> <ul> <li><a href="">about pgp</a></li> <li class="parent"><a href="#">services</a> <ul class="sub-menu"> <li><a href="">overview</a></li> <li><a href="">industry expertise</a></li> <li><a href="">cross-cultural expertise</a></li> <li><a href="">value proposation</a></li> </ul> </li> <li class="parent"><a href="">transactional experience</a> <ul class="sub-menu"> <li><a href="">select transactions</a></li> <li><a href="">prior transactions</a></li> </ul> </li> <li class="parent"><a href="#">team</a> <ul class="sub-menu"> <li><a href="index.html">professionals</a></li> <li><a href="">board of directors</a></li> <li><a href="">advisory board</a></li> </ul> </li> <li class="parent"><a href="">media</a> <ul class="sub-menu"> <li><a href="" class="long">pgp press releases & announcements</a></li> <li><a href="" class="long">pgp in newss</a></li> </ul> </li> <li><a href="">strategic partners</a></li> <li><a href="">contact us</a></li> </ul> </nav> </div> jquery
<script> $(function(){ $('li.parent').bind('click', function(e){ e.preventdefault(); $(this).children('ul.sub-menu').fadein(800); }); }); </script> could please give me hint doing wrong?
you can use preventdefault on parent this.
$('.parent').bind('click', function(e){ if(event.target.classname === 'parent') e.preventdefault(); $(this).children('ul.sub-menu').fadein(800); });
Comments
Post a Comment