В процессе верстки очередного сайта, сделал я заказчику всплывающую строку поиска по клике на картинку. Форма получилась зачетная, особенно после подгонки под стили заказчика. В доработку попросили реализовать механизм закрытия формы поиска по клику вне элемента.
Вот код:
jQuery(document).mouseup(function (e){
var elem = jQuery("#search");
if (!elem.is(e.target)
&& elem.has(e.target).length === 0) {
alert('click');
}
});
Расшифровка:
jQuery(document).mouseup(function (e){ — событие клика (при отпускание кнопки мыши)
var elem = jQuery(«#search»); — тут id нашего элемена по которому клик не считается
if (!elem.is(e.target) — проверяем, что клик был вне нашего элемента
&& elem.has(e.target).length === 0) { — проверяем, что клик был вне дочерних элементов
alert(‘click’); — наше действие