2014-02-09 141 views
1

下面是我的代码,我想将“活动类”添加到活动链接的li元素。意味着我想将活动类添加到当前处于活动状态的li标签。这是我完成的,但不工作。先谢谢你。向父元素添加一个类

$('#rightnav').ready(function() { 
    var page = window.location.href.split("/")[5]; 
    if (page == "") { page = "dashboard.php"; } 
    $(this).find("ul#rightnav>li a[href$="+page+"]").addClass("active"); 
}); 




<ul class="nav navbar-nav side-nav" id="rightnav"> 
      <li><a href="dashboard.php"><i class="fa fa-dashboard"></i> Dashboard</a></li> 
      <li><a href="products_list.php"><i class="fa fa-bar-chart-o"></i> Products</a></li> 
      <li><a href="charts.html"><i class="fa fa-bar-chart-o"></i> Charts</a></li> 
      <li><a href="tables.html"><i class="fa fa-table"></i> Tables</a></li> 
      <li><a href="forms.html"><i class="fa fa-edit"></i> Forms</a></li> 
      <li><a href="typography.html"><i class="fa fa-font"></i> Typography</a></li> 
      <li><a href="bootstrap-elements.html"><i class="fa fa-desktop"></i> Bootstrap Elements</a></li> 
      <li><a href="bootstrap-grid.html"><i class="fa fa-wrench"></i> Bootstrap Grid</a></li> 
      <li><a href="blank-page.html"><i class="fa fa-file"></i> Blank Page</a></li> 
      <li class="dropdown"> 
       <a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="fa fa-caret-square-o-down"></i> Dropdown <b class="caret"></b></a> 
       <ul class="dropdown-menu"> 
       <li><a href="#">Dropdown Item</a></li> 
       <li><a href="#">Another Item</a></li> 
       <li><a href="#">Third Item</a></li> 
       <li><a href="#">Last Item</a></li> 
       </ul> 
      </li> 
      </ul> 

回答

0

尝试

$(document).ready(function() { 
    var page = window.location.href.split("/")[5]; 
    if (page == "") { 
     page = "dashboard.php"; 
    } 

    $('#rightnav > li').has('a[href$="' + page + '"]').addClass("active"); 
}); 

演示:Fiddle

+0

谢谢你......它的工作..(Y) – user3288891

0

$(this).find("ul#rightnav>li a[href$="+page+"]").parent().addClass("active");

这样做是它得到所有匹配的查询字符串的parent S和做.addClass("active")的元素。