inkShio
@inkShio

Открытие/закрытие контента при нажатии на кнопку. Как?

Сделал кнопку которая открывает и закрывает контент. Так же сделал, что если клик был произведен не по контенту, блок контента закрывается. Но проблема в том, что сделав закрытие если клик был вне блока контента, кнопка на закрытие перестает работать. Не пойму в чем проблема.

  • Вопрос задан
  • 323 просмотра
Решения вопроса 1
inkShio
@inkShio Автор вопроса
Такой вариант, подсказали на альтернативном сайте. Работает как надо.
$(function() {
  var $togglers = $(".js-deps-popup");

  return $togglers.on("click", function(e) {
    var $this = $(this),
      $item = $this.next(".dep"),
      $active = $(".dep_show");

    $item.toggleClass("dep_show");
    $active.removeClass("dep_show");
    e.stopPropagation();
  });
});

$(function() {
  $(document).click(function(e) {
    var $togglersPopup = $(".dep__popup");
    if (!$togglersPopup.is(e.target) &&
      $togglersPopup.has(e.target).length === 0
    ) {
      $(".dep").removeClass("dep_show");
    }
  });
});
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
$('button.js-deps-popup').on('click', function(){
  $(this).closest('.deps__item').find('.dep__popup').toggleClass('active')
})
Ответ написан
Ваш ответ на вопрос

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

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