2016-07-14 5 views
0

У меня есть навигационное меню, которое загружается условно на основе состояния сеанса.прослушать события на .load().

Один из меню выглядит следующим образом ..

<ul class="nav navbar-nav menu" > 
      <li id="index"><span class="glyphicon glyphicon-home" aria-hidden="true"></span> Home</li> 
      <li><a href="addhook.html"><span class="glyphicon glyphicon-map-marker" aria-hidden="true"></span> Register Site</a></li> 
      <li><a href="settings.html"><span class="glyphicon glyphicon-th-list" aria-hidden="true"></span> Favorites</a></li> 
       <li><a href="#about"><span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span> About</a></li> 
      <li><a href="settings.html"><span class="glyphicon glyphicon-cog" aria-hidden="true"></span> Settings</a></li> 
      <li><a href="login.html"><span class="glyphicon glyphicon-log-out" aria-hidden="true"></span> Log out</a></li> 
     <ul> 

, чтобы загрузить его, я $("#navbar").load("unauthNav.html"); действовать на пункты в меню можно использовать обратный вызов, но я не знаю, как слушать краны после того, как меню загружается, поскольку он не входит в DOM.

Если бы он был загружен DOM, я бы использовал обработчик щелчка в пределах $(document).ready() Я пробовал .on, но это тоже не сработает. например

var navMain = $(".menu"); 
    navMain.on("click", "li", null, function() { 
    alert($(this).attr('id')); 
    navMain.collapse('hide'); 
}) 

ответ

0

Try на обработчик событий нажмите на документ, а не navmain ниже

document.on("click", ".menu li", null, function() { 
    alert($(this).attr('id')); 
    navMain.collapse('hide'); 
}) 
Смежные вопросы