Закрытие элемента по клику вне его области, jquery?

Здравствуйте, начал изучать js и параллельно jquery, столкнулся с одной трудностью... есть скрипт(надеюсь валидный:)), который при нажатии на кнопку открывает и при повторном нажатии закрывает блок(в данном случае div), что нужно дописать чтоб блок закрывался еше и при клике вне его области? вот код: jsfiddle.net/2C96u/1/
  • Вопрос задан
  • 30116 просмотров
Решения вопроса 2
iiil
@iiil
Инженер и вэб-дизайнер, рисую.
Конкретно в Вашем примере: jsfiddle.net/iiil/2C96u/3
Но я бы сделал саму функцию по-другому. Используйте toggleClass, например. Или toggle.
Ответ написан
Комментировать
dabich
@dabich
Web Developer
Ещё как вариант добавить эти два обработчика. Так же работает как нужно.

$('.join, .join span').click(function (e) {
    return false;
});
    
$(document).click(function (e) {
    join.fadeOut(700);
    return false;
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
iiil
@iiil
Инженер и вэб-дизайнер, рисую.
jsfiddle.net/iiil/5r7C2/24
Посмотрите пример. Футер открывается по клику на красный блок, а закрывается по клику на любое место, кроме непосредственно футера. Задача тривиальная и на тостере решалась не раз.
Ответ написан
@modernstyle
Code GOD
Посмотрите на оператор $('*') (звездочка) - https://api.jquery.com/all-selector/

Он отслеживает все элементы на странице :)

Как вариант

$(document).on('click', function () {
...
});


По коду - можно обратить внимание на toggle

$joinLink.click(function() {
  $joinSpace.toggle( "slow", function() {
   
  });
});
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 23:00
5000 руб./за проект
19 апр. 2024, в 20:43
20000 руб./за проект