如何将当前URL的菜单选项卡动态标记为活动?

时间:2011-09-19 10:16:45

标签: jquery codeigniter

我有这样的链接:

http://localhost/BandTemplate/admin/galleries

如何使用jquery访问最后一个段(图库),以便我可以将菜单选项卡更改为活动状态。这是菜单的代码:

  <nav id="navigation" class="col_12">
<ul>
    <li><a href="<?php echo base_url() ?>admin">Home</a></li>
    <li><a href="<?php echo base_url() ?>admin/band">Band</a></li>
    <li><a href="<?php echo base_url() ?>admin/news">News</a></li>
    <li><a href="<?php echo base_url() ?>admin/discography">Discography</a></li>
    <li><a href="<?php echo base_url() ?>admin/tour">Tour</a></li>
    <li><a href="<?php echo base_url() ?>admin/galleries">Galleries</a></li>
    <li><a href="<?php echo base_url() ?>admin/social">Social Networks</a></li>
    <li><a href="<?php echo base_url() ?>admin/messages">Messages</a></li>
    <li><a href="<?php echo base_url() ?>admin/logout">Logout</a></li>
</ul>

2 个答案:

答案 0 :(得分:2)

var str = 'http://localhost/BandTemplate/admin/galleries';
var substr = str.split('/');
var lastEl = substr .pop();

现在lastElgalleries

答案 1 :(得分:2)

更优雅的解决方案是遍历UL列表并检查A href属性是否具有与当前页面相同的URI值,如果是,则将类“active”添加到LI elem并打破循环。

$(function() {
 $('#navigation ul').children().each(function() {
   var link = $(this).find('a');
   if ($(link).attr('href') == location.href) {
     $(link).addClass('active');
     return false;
   }
 });
});