Onclick

  • Автор темы TimeDontWait
  • Дата начала
T

TimeDontWait

Прям стыдно, но не пойму.
Есть меню цсс, для активной менюшки - отдельный класс по его id='active'
На каждой странице устанавливается id для соответствующего элемента, а если страница не обновляется, то как сменить id. Все что смог - установить при клике
Код:
onclick="(id='active')
А как сделать, чтоб при клике на другой элемент id устанавливался только ему ?
 
T

TimeDontWait

Для id='active' прикручен свой класс, мне просто нужно при клике на элемент устанавливать ему данный id, а у остальных элементов убирать. Ну к примеру
Для li - свой класс <standart>, а для активного - другой <active>
Код:
<ul>
<li><a href="#" onclick="this.id='active'">first</a></li>
<li><a href="#" onclick="this.id='active'">second</a></li>
</ul>
Если клацну на первый li - установлю ему другой класс, клацну на второй - то же самое, а мне нужно чтоб он был только у одного элемента списка, при клике на первый устанавливался ему <active>, а у второго становился <standart>
 
T

TimeDontWait

Коряво выражаюсь, тут уж простите
Я понимаю что айди уникальный.
А класс как можно поменять, не обновляя страницы ?
Просто укажите любой вариант решения.
Самый громоздкий - сделать функцию, и при клике для первого устанавливать один класс, второго другой класс, но это будет много кода. Думал, может как-нибудь через переменные или еше как ...
 
T

TimeDontWait

Открою тайну... программирование без переменных не бывает.
Не иронизируйте

Спасибо, я понял, уже внедрил.
Просто получается много букаф. Вот если бы функцию :
идет обращение к скрипту
скрипт выставляет текущему элементу класс "хитрый"
всем остальным элементам(входящим в список) другой класс
 
V

vital

я бы вам jQuery посоветовал. Там проще с DOM работать, если лень учить чисты джс, то темболее.
А вам надо протись то всем элементам, которыми сделно меню.. Списки7 дивы? и убрать у них атрибут id=active.
примерно так
var a=getElementsById('li')
foreach (i in a)
{
if (a.id=='active') {a.id='neactive';}
}
clickedelement.id='active';

Добавлено: бтв, все-таки стоит юзать классы для таких целей)
 
T

TimeDontWait

var a=getElementsById('li')
foreach (i in a)
{
if (a.id=='active') {a.id='neactive';}
}
clickedelement.id='active';
Спасибо, как-то не догадался, что можно по тегам определять список
В данном случае лучше. Только если использовать готовые решения, сам еще не рассматривал даже синтаксис.
И еще вот решил чуток пробежаться глазами, . Такие уроки сойдут, или может что по-лучше ? Желательно не на EN
 
V

vital

Если не на ен.. То все рядом =) link removed Не читал не одну из них, не посоветую.
Я во всем разбирался руками с помощью офф руководства. Ну и немного видео уроков. Могу дать ссылку на торрент, там околого 1гб, на английском.
А по вашей ссылке.. Я бы не стал. Это опять же набор готовых решений, который вряд ли даст понятие о том, как оно работает.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!