@nagge101

Как сделать выборку jQuery скрипта по добавлению класса?

Всем привет. У меня появилась проблема и мне очень нужна ваша помощь. Описываю проблему: У меня есть на сайте элементы, вот структура:
<div class="element-sidebar_content">
   <ul>
        <li><a>Витамин С</a></li>
        <li><a>Для женщин</a></li>
        <li><a>Для мужчин</a></li>
        <li><a>Спортивные</a></li>
        <li><a>Мультивитамины</a></li>
        <li><a>Витамин С</a></li>
   </ul>
   <span class="more enable">Показать все</span>
   <span class="less disable">Показать меньше</span>
</div>


При нажатии на span "Показать все" к списку ul Добавляется class, который его расширяет по высоте. Таких элементов штук 5 с одинаковой структурой. Все работает, но применяется ко всем 5 элементам. Как можно реализовать так, чтобы шла выборка именно из того объекта в котором находится span?

Код jQuery Прикладываю:

$('.more').on('click', function() {
    $('.element-sidebar_content').children('ul').addClass('active-more');
    $('.more').removeClass('enable');
    $('.more').addClass('disable');
    $('.less').removeClass('disable');
    $('.less').addClass('enable');
});
$('.less').on('click', function() {
    $('.element-sidebar_content').children('ul').removeClass('active-more');
    $('.less').removeClass('enable');
    $('.less').addClass('disable');
    $('.more').removeClass('disable');
    $('.more').addClass('enable');
});


Скрипт не идеальный, но я только учусь)
  • Вопрос задан
  • 48 просмотров
Решения вопроса 1
Stalker_RED
@Stalker_RED
У вас селекторы выбирают элементы по всей странице, а вам нужно получить кликнутый элемент, найти родительский element-sidebar_content, и дальше работать только с его содержимым.

Ну и вообще, можно не мучаться с каждой конопочкой, а менять только родителю .active, а все остальное на css.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы