Олег Б.
292 повідомлення
#15 років тому
Привет всем.
Есть такой код:

$('.words-list li').click(function()
{
$(this).addClass('select-li');
});
$('.select-li').click(function()
{
$(this).removeClass('select-li');
});

Т.е. при клике по элементу li из списка ему присваевается некий класс (просто меняется фон). Далее нужно, что бы после второго клика этот класс убирался. Первая часть кода работает правильно, но вот вторая - никак не хочет. Фаербаг ни на что не ругается, но как я понял, jQuery просто не хочет найти селектор "select-li"..
Может я правда что-то не верно сделал, подскажите, люди добрые
Евгений Б.
5330 повідомлень
#15 років тому
Она не работает, так как Dom уже построен при загрузке. надо или обновлять (не дай бог так делать) или просто....

сделайте обработку для

$('.words-list li'.click(function()
{
Если класс select-li есть, то $(this).removeClass('select-li';, а если нету, то $(this).addClass('select-li';
});


есть вариант еще проще
-тут даже примеры есть, как я понимаю именно для Вас и именно Ваш функционал
Николай Т.
205 повідомлень
#15 років тому
Во второй части пробни селектор .words-list li
Олег Б.
292 повідомлення
#15 років тому
ArtPro, да, про toggleclass то и забыл-с..спасибо, попробую
e1it3, в том и дело, что это он видит, а новодобавленный класс - нет. ArtPro прав на счет DOM`а
Олег Б.
292 повідомлення
#15 років тому
Да, toggle помогло, всем спасибо, топик клозед.
Роман В.
99 повідомлень
#15 років тому
$('.words-list li').click(function(){
$(this).toggleClass('select-li');
});


эм.. не успел
Дмитрий Засядько
87 повідомлень
#15 років тому
Код после загрузки DOM назначает обработчики на клик всему что нашёл, тем элементам, которым класс select-li присваивается после загрузки, обработчики назначены не будут. Можно сделать как уже писали выше .toggleClass, ну а если требуются какие то другие действия кроме включения-выключения класса, то использовать .toggle(fn1, fn2).
Роман В.
99 повідомлень
#15 років тому
ArtPro, segoddnja, в jQ с версии 1.3 есть метод live. Добавляет обработчик события для существующих и будущих элементов. чтоб отвязать - die
Евгений Б.
5330 повідомлень
#15 років тому
Цитата ("r0b1n"):
ArtPro, segoddnja, в jQ с версии 1.3 есть метод live. Добавляет обработчик события для существующих и будущих элементов. чтоб отвязать - die

есть, про него все помнят, но в данном случае годиться самокат, а авто, останется в гараже