Активная кнопка в статичном меню html

Ben_Laden
На сайте с 26.03.2011
Offline
92
11406

Доброго вечера!

Стоит следующая задача. Есть статичное меню на html и необходимо задать класс для активной кнопки.

К примеру: Главная | Страница | Контакты

нажав на контакты, кнопка становится активной Главная | Страница | Контакты

В вордпресе знаю для активной кнопки присваивается класc сurrent, а как быть со статичным кодом не динамичным.

VHS-1980
На сайте с 21.05.2010
Offline
91
#1

Точно так же. Назначаете стиль/класс, и вешаете через jquery анимацию/действия/стиль на свою кнопку.

L7
На сайте с 25.03.2011
Offline
40
#2

через css

#ваш id блока верхнего меню li a:active {

а дальше какой вы ее хотите сделать (цвет, выделение и тд), напр.

}

например:

#top_nav li a:active {

color: #000;

}

Ben_Laden
На сайте с 26.03.2011
Offline
92
#3
Lester7:
через css

#ваш id блока верхнего меню li a:active {
а дальше какой вы ее хотите сделать (цвет, выделение и тд), напр.


}

например:

#top_nav li a:active {
color: #000;
}

Этот стиль будет активным только в момент нажатия, а нужно после нажатия зафиксировать

---------- Добавлено 20.12.2012 в 23:46 ----------

VHS-1980:
Точно так же. Назначаете стиль/класс, и вешаете через jquery анимацию/действия/стиль на свою кнопку.

от если бы чучуть бы подробнее или направить туда где это можно почитать

H
На сайте с 17.11.2012
Offline
15
#4
Ben_Laden:
Этот стиль будет активным только в момент нажатия, а нужно после нажатия зафиксировать

А при нажатии пользователь переходит на другую страницу? Или это навигация на AJAX? Или это не меню навигации?

Потому что при переходе, html самосотоятельно запомнить класс не может, надо будет либо через JS либо PHP подставлять в текст html класс.

Ben_Laden
На сайте с 26.03.2011
Offline
92
#5
Henryh:
А при нажатии пользователь переходит на другую страницу? Или это навигация на AJAX? Или это не меню навигации?

Потому что при переходе, html самосотоятельно запомнить класс не может, надо будет либо через JS либо PHP подставлять в текст html класс.

Да это навигация, при нажатии просто открывается новая страница, меню навигации написано на html, хотя сайт на вордпрессе, просто из за определенного тз пришлось сделать его не денамическим.

пример меню обычный

<div id="nav">

<ul>
<a href="#"><li>Главная</li></a>
<a href="#"><li>Контакты</li></a>
<a href="#"><li>Категории</li></a>
</ul>
</div>
дани мапов
На сайте с 06.09.2012
Offline
204
#6

в htaccess дописать:

RemoveHandler .html .htm

AddType application/x-httpd-php .php .htm .html .phtml


<a href="link2" <?=($_SERVER['REQUEST_URI']=='link2') ? ' class="current"' : ''?>><li>Контакты</li></a>
Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
dma84
На сайте с 21.04.2009
Offline
168
#7

Ну и прописывайте вручную на каждой страничке класс для активной ссылки

<div id="nav"> 
<ul>
<a href="#"><li>Главная</li></a>
<a href="#" class="active"><li>Контакты</li></a>
<a href="#"><li>Категории</li></a>
</ul>
</div>

И стили задавайте какие угодно

#nav .active{color:red; бла-бла-бла}
Ben_Laden
На сайте с 26.03.2011
Offline
92
#8
dma84:
Ну и прописывайте вручную на каждой страничке класс для активной ссылки

<div id="nav"> 
<ul>
<a href="#"><li>Главная</li></a>
<a href="#" class="active"><li>Контакты</li></a>
<a href="#"><li>Категории</li></a>
</ul>
</div>

И стили задавайте какие угодно
#nav .active{color:red; бла-бла-бла}

Я наверное что то не так объяснил..., у меня меню находится в сайдбаре а он не меняется, он подключается к index.php или page.php c файла sidebar.php как здесь быть?

---------- Добавлено 21.12.2012 в 11:43 ----------

дани мапов:
в htaccess дописать:

RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html .phtml



<a href="link2" <?=($_SERVER['REQUEST_URI']=='link2') ? ' class="current"' : ''?>><li>Контакты</li></a>

Что это за фукнкция, объясните пожалуйста!

VHS-1980
На сайте с 21.05.2010
Offline
91
#9

ТС, то что Вам нужно - прописывается статично. Это - не динамика. Это генерируется не PHP. Это - HTML+CSS+JAVASCRIPT.

В выводе файла sidebar.php нужно добавить нехватающие HTML элементы в вывод. А потом уже их менять, разукрашивать и т.п. при помощи CSS и JavaScript.

Все за Вас никто не сделает. Если совсем не хватает знаний - обратитесь к знающим людям, за небольшую денежку Вам это сделают.

дани мапов
На сайте с 06.09.2012
Offline
204
#10
Ben_Laden:

Что это за фукнкция, объясните пожалуйста!

Это чтобы в html файлах обрабатываля php код:


в htaccess дописать:
RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html .phtml

Тут просто идет сравнение, если адрес текущей страницы равен linkX - элементу li присваивается класс current.


<a href="link1" <?=($_SERVER['REQUEST_URI']=='link1') ? ' class="current"' : ''?>><li>Главная</li></a>
<a href="link2" <?=($_SERVER['REQUEST_URI']=='link2') ? ' class="current"' : ''?>><li>Контакты</li></a>
<a href="link3" <?=($_SERVER['REQUEST_URI']=='link3') ? ' class="current"' : ''?>><li>Категории</li></a>

link1,link2,link3 - замените на свои адреса.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий