Как выделить активный пункт в меню на jQuery

Недавно понадобилось выделять активный пункт в меню, а вот выставить активный клас средствами движка возможности не было. Причем необходимо было выделять пункт меню даже если открыта дочерняя страница.
Для этого был написан скриптик на jQuery:

$(document).ready(function() {
var now_url=location.href; //получаем урл текущей страницы
if (now_url.split('/')[3]!=0) { // проверяем, есть ли что-то после 3 слеша в урле, если есть - идем дальше
$.each($("a[href*=/"+now_url.split('/')[3]+"]"), // для каждой ссылки, в которой есть слово после третьего слеша
function(){$(this).addClass('now');}); // добавляем класс now
}
});
Запись опубликована в рубрике Старые посты с метками . Добавьте в закладки постоянную ссылку.

14 комментариев: Как выделить активный пункт в меню на jQuery

  1. DPolyakov говорит:

    Для уточнения в 4 строке перед a[href… можно поставить класс или id родительского элемента

  2. Аноним говорит:

    а можно поподробнее???
    не пойму почему не работает, у меня вложенность домен/html/page.html

  3. Аноним говорит:

    Применил ваш скрипт, перед а добавил id
    не работает. даже не могу понять почему
    меню не имеет вложенности

  4. Аноним говорит:

    Куда это вставлять?

  5. Аноним говорит:

    Ну так ведь сам класс (.now) тоже необходимо создать ! Что тут удивлятся, что не работает …

  6. Аноним говорит:

    Дружище!!! Спасибо !! пипец как выручил

  7. Стас говорит:

    Спасибо, всё работает!

  8. Вовег говорит:

    Да как же такое запустить!? Афтр, кидани аську свою плз! Мыло указал в контакте комента

  9. nik_neman говорит:

    День добрый.
    А как данный код использовать только для определенного блока?
    Заранее спасибо.

  10. Ксения говорит:

    У меня не работал из-за одинаковых кавычек в 4 строке. Если использовать разные кавычки, то всё ок.

    Как вставить — сначала подключить jQuery (если ещё не подключен), а потом сам код в head.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *