2017-09-11 1 views
0

Ich habe Struktur Hauptnavigation als unten:JQuery addClass mehrere li

<li> 
    <a class="dropdown-toggle" href="about"> 
     <?php echo nav_about ?> 
    </a> 
    <ul class="dropdown-menu"> 
     <li> 
      <a href="<?php echo BASEURL ?>/about-us.html"> 
       <?php echo nav_about_profile ?> 
      </a> 
     </li> 
     <li> 
      <a href="<?php echo BASEURL ?>/committee.html"> 
       <?php echo nav_about_committee ?> 
      </a> 
     </li> 
    </ul> 
</li> 

und ein Highlight Skript jeweiligen Element, während die URL und Link sind Spiele bis:

/* highlight nav menu */ 
$(function(){ 
    $('#topMain.nav-pills li a').each(function(index) { 
     if($.trim(this.href) == stripQueryStringAndHashFromPath(window.location.href)) { 
      $(this).closest('li').addClass('active'); 
     } 
    }); 
}); 

function stripQueryStringAndHashFromPath(url) { 
    return url.split("?")[0].split("#")[0]; 
} 

I active hinzufügen zu seinem nächsten Hyperlink li, aber ich möchte nach einer Möglichkeit suchen, active zu sehr top li als auch hinzufügen, die wie folgt lauten:

<li class="active"> <-- I NEED THIS CLASS TO BE ADD ALSO 
    <a class="dropdown-toggle" href="about"> 
     <?php echo nav_about ?> 
    </a> 
    <ul class="dropdown-menu"> 
     <li class="active"> 
      <a href="<?php echo BASEURL ?>/about-us.html"> 
       <?php echo nav_about_profile ?> 
      </a> 
     </li> 
     <li> 
      <a href="<?php echo BASEURL ?>/committee.html"> 
       <?php echo nav_about_committee ?> 
      </a> 
     </li> 
    </ul> 
</li> 
+0

Add-Klasse an die Spitze Mutter li wie '' parentli' dann verwenden am nächsten() '' wie .closest ('li.parentli') ', wenn Sie so haben sie wählt die top li li mögen, was Sie wollten – guradio

+0

@guradio, danke das ist Arbeit! –

+0

froh, um zu helfen, Mate :) Happy Coding – guradio

Antwort

0

Versuchen Sie folgendes:

$('.dropdown-menu li:has(a[href="'+opened_path+'"])').addClass('active') 
.parent().closest('li') 
.addClass('active');