Как динамически пометить вкладку меню для текущего URL как активную? - PullRequest
0 голосов
/ 19 сентября 2011

У меня есть такая ссылка:

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 ]

2 голосов
/ 19 сентября 2011

Более элегантным решением было бы просмотреть список UL и проверить, имеет ли атрибут Href то же значение URI, что и текущая страница, если да, добавьте класс "active" к элементу LI и разорвите цикл.

$(function() {
 $('#navigation ul').children().each(function() {
   var link = $(this).find('a');
   if ($(link).attr('href') == location.href) {
     $(link).addClass('active');
     return false;
   }
 });
});
2 голосов
/ 19 сентября 2011
var str = 'http://localhost/BandTemplate/admin/galleries';
var substr = str.split('/');
var lastEl = substr .pop();

сейчас lastEl - это galleries

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...