Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   помощь с меню (https://javascript.ru/forum/misc/63911-pomoshh-s-menyu.html)

porezon 07.07.2016 17:25

помощь с меню
 
есть меню

<script>
var current = 'page1';
function show(id){
	document.getElementById(current).style.display = 'none';
	document.getElementById(id).style.display = 'block';
	current = id;
}
</script>


<a onclick="show('page1'); return false;"><div class='leftname2-dis'>Популярные</div></a>

<a onclick="show('page2'); return false;"><div class='leftname2-dis'>Рейтинговые</div></a>

<a onclick="show('page3'); return false;"><div class='leftname2-dis'>Обсуждаемые</div></a>


<div id="page1">page1 page1 page1 page1 page1 page1 </div>
<div id="page2">page2 page2 page2 page2 page2 page2 </div>
<div id="page3">page3 page3 page3 page3 page3 page3 </div>



нужно чтоб когда выбирал между Обсуждаемые, рейтинговые и популярные у них менялся див класс, например выбрал обсуждаемые и стал див класс у него leftname2-active

рони 07.07.2016 20:20

porezon,
classlist

warren buffet 08.07.2016 20:43

Цитата:

leftname2-active
Не надо менять весь класс, надо разбивать класс на пару или несколько (шнурки вообще на десятки колят) и добавлять изменяемую часть к базовой, то есть был например

class="leftname2 dis" стал class="leftname2 active"

То есть element.classList.add('active'); Но еще надо убрать активность с предыдущего. ))

Есть другой способ - генерить стиль под активный элемент. На жабе тоже можно, но я не делал, поэтому с пехепе

/* generate styles for top menu */
$style='{text-decoration:underline!important;color:#E5430A;}';
echo '#tm-'.$this->model.$style;


И не надо ничего никуда фтыкать и убирать.


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