JavaScript: отслеживание клика вне элемента
Задача: отследить клик вне элемента div.
Решение: для этого навесим событие на клик вышестоящего элемента, и при клике анализируем, то на чём кликнули «внутри» или «снаружи»:
Например:
html:
<div class="el1">
<div class="el2"></div>
<div class="el3"></div>
<div class="el4"></div>
<div class="el5"></div>
</div>
javascript:
$(".el1" ).bind( "click", function(e) {
if ( $(e.target).closest('.el4').length ) {
console.log("внутри");
return;
};
console.log("снаружи");
});