Вопрос касательно siblings()?

Есть не очень сложная разметка:
<div class="cd-f">
	<div class="cd-k"></div>
	<div class="cd-k"></div>
	<div class="cd-k"></div>
</div>

Хочу, чтобы при клике на элемент, ему добавлялся класс, а у остальных удалялся. Готово:
$('.cd-k').on('click', function(){
    $(this).addClass('cd-m').siblings().removeClass('cd-m');
  });

Но если мои элементы находятся уже в разных блоках, то siblings перестает работать
<div class="cd-f">
	<div class="div-kl"><div class="cd-k"></div></div>
	<div class="div-kl"><div class="cd-k"></div></div>
	<div class="div-kl"><div class="cd-k"></div></div>
</div>

Как мне это исправить ?
  • Вопрос задан
  • 195 просмотров
Решения вопроса 2
In4in
@In4in
°•× JavaScript Developer ^_^ ו°
$(this).addClass('cd-m')
  .parent().siblings()
    .find(".cd-k")removeClass('cd-m');


А лучше написать обертку для подобных задач.
Ответ написан
@Cesavel
:D
$(document).ready(function(){
  $('.cd-k').on('click', function(){
      $('.cd-k').removeClass('cd-m');
      $(this).addClass('cd-m');
  });
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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