Помогите с раскрытием списка - JS

12
[Удален]
#11

Varenik, если класс только один, то можно

$('.menu-v').find('li.selected').removeAttr('class');

а что выдаёт

alert($('.menu-v').find('li.selected').html())

?

или

alert($('.menu-v').find('li.selected').size())

может там нет ни чего?

V
На сайте с 10.01.2012
Offline
85
#12

$('.menu-v').find('li.selected').removeAttr('class'); срабатывает только при первом клике, аналогично как и $('.menu-v').find('li.selected').removeClass('selected');

При последующих не срабатывает

[Удален]
#13
Varenik:
При последующих не срабатывает

а как он может сработать если там всё удалено?

V
На сайте с 10.01.2012
Offline
85
#14
burunduk:
а как он может сработать если там всё удалено?

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

[Удален]
#15
Varenik:
оно удаляет клас у всех и ставит его тому елементу, на который нажато.

вообще-то, обращение

$('.menu-v').find('li.selected')

это ко всем элементам на странице относится, насколько я понимаю необходимо открыть/закрыть только текущий, не сворачивая/разворачивая (как и изменить list-style).

следовательно необходимо использовать $(this)

12

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