Задать вопрос
Mesuti
@Mesuti

Как скрыть список при клике вне элемента?

Привет!
есть список на jquery
Как его скрыть при клике вне элемента?

пробовал так, но либо открывает также при клике вне элемента либо сразу закрывает при клике на элемент

$(document).click(function (e) {
        $('.select_inner').slideToggle('fast');
        return false;
    });
  • Вопрос задан
  • 866 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 1
slo_nik
@slo_nik
Добрый вечер.
Попробуйте так
<div id="block" style="border: 1px solid; height: 100px; width: 100px"></div>
<script type="text/javascript">
  jQuery(function($){
    $(document).mouseup(function (e){ // отслеживаем событие клика по веб-документу
        var block = $("#block"); // определяем элемент, к которому будем применять условия (можем указывать ID, класс либо любой другой идентификатор элемента)
        if (!block.is(e.target) // проверка условия если клик был не по нашему блоку
            && block.has(e.target).length === 0) { // проверка условия если клик не по его дочерним элементам
            block.hide(); // если условия выполняются - скрываем наш элемент
        }
    });
});
  </script>


p.s. всё работает
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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