Onclick

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

TimeDontWait

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

TimeDontWait

#3
Для 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

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

TimeDontWait

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

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

vital

Больной Компом Детектед
29.01.2006
2 432
33
#7
я бы вам 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

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

vital

Больной Компом Детектед
29.01.2006
2 432
33
#9
Если не на ен.. То все рядом =) вот тут Не читал не одну из них, не посоветую.
Я во всем разбирался руками с помощью офф руководства. Ну и немного видео уроков. Могу дать ссылку на торрент, там околого 1гб, на английском.
А по вашей ссылке.. Я бы не стал. Это опять же набор готовых решений, который вряд ли даст понятие о том, как оно работает.