2013-10-27 110 views
0

以下是我用於導航的代碼。如何在點擊導航鏈接後關閉響應導航下拉菜單

<nav id="nav" class="clearfix"> 
    <ul class="clearfix"> 
    <li class="current"><a href="#section-1">Section 1</a></li> 
<li><a href="#section-2">Section 2</a></li> 
<li><a href="#section-3">Section 3</a></li> 
<li><a href="#section-4">Section 4</a></li> 
<li><a href="#section-5">Section 5</a></li> 
    </ul> 
    <a href="#" id="pull">Menu</a> 
</nav> 

這裏是我正在使用的腳本。

$(function() { 
     var pull  = $('#pull'); 
      menu  = $('nav ul'); 
      menuHeight = menu.height(); 

     $(pull).on('click', function(e) { 
      e.preventDefault(); 
      menu.slideToggle(); 
     }); 

     $(window).resize(function(){ 
      var w = $(window).width(); 
      if(w > 320 && menu.is(':hidden')) { 
       menu.removeAttr('style'); 
      } 
     }); 
    }); 

響應導航工作正常,只是無法讓它在點擊鏈接後關閉。我必須點擊菜單按鈕關閉它。

回答

0
$('#nav ul li a').on('click',function(){ 
    $(this).parent().parent().slideToggle(); 
}); 

這應該工作。

隨着.parent()你得到了一個hyrachie,所以使用它兩次從鏈接到菜單本身。