jQuery слайд-переключатель, чтобы также переключить класс

0

Привет, я хочу, чтобы переключить класс, когда я slidetoggle мои блоки. По умолчанию у меня есть загрузка правой стрелки, если она уже открыта, я сделал это вручную в своем HTML.

Я использовал следующий код:

$(this).toggleClass("entypo chevron-right");

Однако это вводит шеврон-право в неправильном месте. Я хочу, чтобы он был добавлен в следующий раздел:

<h3 class="showpageblock"><span class="entypo chevron-down"></span> Site settings</h3>

Однако, когда я $(.showpageblock span) замену $(this) на $(.showpageblock span) выше цель, то есть $(.showpageblock span) то он заменяет все классы, а не щелчком.

Я не уверен, правильно ли я попытался реализовать это, так как я не думаю, что JS распознает, когда нужно вставлять вниз и стрелку вправо соответственно. Я чувствую, что JS нужно знать, какой из них активен, а какой нет. Мой опыт является основным, поэтому я не уверен в правильном методе. Если бы кто-то мог указать мне правильное направление, которое было бы очень оценено.

Нажмите ниже, чтобы посмотреть мой JSFiddle.

JSFIDDLE

Теги:
slidetoggle
toggleclass

1 ответ

2
Лучший ответ

$(this) на самом деле указывает на <h3 class="showpageblock"> а не на <span class="entypo chevron-down"></span> который находится внутри тега h3.

изменить это

$(this).toggleClass("entypo chevron-right");

в

$(this).find('span').toggleClass("entypo chevron-right");

LIVE DEMO:

http://jsfiddle.net/dreamweiver/5umDs/2/

Счастливое кодирование :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню