Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Активация текущего пункта меню. (https://javascript.ru/forum/jquery/28552-aktivaciya-tekushhego-punkta-menyu.html)

Jakiro 24.05.2012 14:53

Активация текущего пункта меню.
 
Всем доброго дня!
Облазил весь гугл, не могу допетрить, как с помощью jquery активировать текущую строку менюшки.
Менюшка выглядит так:
<div class="navbar">
  <div class="navbar-inner">
    <div class="container">

<ul class="nav">
  <li><a href="/index.php?ukey=auxpage_service">Сервис</a></li>
  <li><a href="/index.php?ukey=news">Акции</a></li>
  <li><a href="/index.php?ukey=auxpage_articles">Статьи</a></li>
  <li><a href="/index.php?ukey=auxpage_foto"> Фотогалерея </a></li>
  <li><a href="/index.php?ukey=response">Вопрос-Ответ</a></li>
  <li><a href="/index.php?ukey=auxpage_contact">Контакты</a></li>
  <li><a href="/index.php?ukey=auxpage_about">О Компании</a></li>
</ul>

    </div>
  </div>
</div>


Полагаю надо выдернуть из браузера концовку адреса из массива location.href сравнить его с .nav li a[href=] и применить к li класс "active".
Помогите с кодом.
Пытался:
$(document).ready(function() {
 var now_url=location.href;

 if (now_url.split('/')[1]!=0) { 
 $.each($(".nav li a[href*=/"+now_url.split('/')[1]+"]"),
 function(){$(".nav li").addClass('active');}); 
 }
});{/literal}

Serg_pnz 24.05.2012 17:05

Я бы так сделал:
1. Получил значение ukey из location.href
2.
$('ul.nav a[href $= "'+ukey+'"]').addClass(...)

http://jquery.page2page.ru/index.php...83%D1%82%D0%B0

Jakiro 24.05.2012 17:42

Цитата:

Сообщение от Serg_pnz (Сообщение 176390)
Я бы так сделал:
1. Получил значение ukey из location.href
2.
$('ul.nav a[href $= "'+ukey+'"]').addClass(...)

http://jquery.page2page.ru/index.php...83%D1%82%D0%B0

Хм, попробовал вот так:
<script type="text/javascript">

$(document).ready(function() {
var ukey = location.href.substr(5);
$('ul.nav a[href $= "'+ukey+'"]').addClass('active');
 
});
</script>

Чтото никак (

Serg_pnz 24.05.2012 17:51

-4 напиши, а не 5

Serg_pnz 24.05.2012 17:54

пример http://jq003.jcase.ru/?ukey=auxpage_foto

Jakiro 24.05.2012 18:04

Почему то выборка не отрабатывает оО

$('ul.nav a[href $= "'+ukey+'"]').addClass('active');

http://promsnab-tomsk.ru (менюшка вверху)
причем до смешного доходит, пишу:
$(document).ready(function() {


$('ul.nav a[href $= news]').css('color:#ff0000');
 
});

Выборка не идет и все тут ;(

Jakiro 24.05.2012 18:15

Дык он мб точному соответсвию ищет? У меня перед переменной еще и index.php стоит

Jakiro 24.05.2012 18:43

Селектор
a[href $= news]
не отрабатывает хоть убейся(

Serg_pnz 25.05.2012 11:16

Jakiro,
всё у тебя отрабатывает как надо. Смотри сюда
http://promsnab-tomsk.ru/index.php?ukey=auxpage_articles
и в код
<a href="/index.php?ukey=auxpage_articles" class="active">Статьи</a>

А вот свойства класса у тебя не описано.

Jakiro 25.05.2012 14:09

Блин, класс описан, только для li, а не для а ))


Часовой пояс GMT +3, время: 03:54.