Событие при клике на любой элемент кроме одного
Доброго времени. Борюсь с такой задачей:
На страничке при каком-то действии всплывает див (без затемнения фона). Надо чтобы по нажатии вне элемента он закрывался, а по нажатии на него - нет.
$('*:not(#div)').click(function(){
if($(this).attr('id')!='div'){
$('#div').hide();
}
});
Вот такая и похожие конструкции не помогают. Див закрывается при любом клике в любом месте, так как он перебирает все элементы, которые находятся под мышкой. Что делать? |
Сорри, поспешил с писаниной и нашел адекватный пример реализации:
$(document).click(function(e){
if ($(e.target).closest("#fadeDiv").length) return;
$('#fadeDiv').hide();
e.stopPropagation();
});
|
| Часовой пояс GMT +3, время: 13:56. |