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