Как убрать класс у элемента при клике на другой jQuery
Надо убрать класс active-item-li у li по нажатию на кнопку close-item-li.
Этих элементов много, я подозреваю что в этом и проблема.
По идеи тут добавляется класс, что бы увеличить элемент по нажатию на него, там появится кнопка с Х, нажав на который можно удалить класс и вернуть всё исходное положение.
Вот моё нерабочее решение:
let someDiv = $('.type-product');
someDiv.on('click', function() {
$(this).addClass('active-item-li');
});
$('close-item-li').on('click' , function () {
someDiv.removeClass('active-item-li');
});
HTML:
<li class="type-product active-item-li">
<button class="close-item-li">x</button>
<a href="#" class="link">ссылка</a>
<a>ссылка</a>
</li>
Ответы (1 шт):
Автор решения: Vasily
→ Ссылка
В данном случае Вам достаточно найти родительский элемент кнопки и удалить у него нужный класс:
$(".close-item-li").on("click", function() {
$(this).parent().removeClass("active-item-li")
})
li {
list-style-type: none;
}
.active-item-li {
background-color: red;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<li class="type-product active-item-li">
<button class="close-item-li">x</button>
</li>
<br>
<hr>
<br>
<li class="type-product active-item-li">
<button class="close-item-li">x</button>
</li>
<br>
<hr>
<br>
<li class="type-product active-item-li">
<button class="close-item-li">x</button>
</li>