我需要隐藏或显示该div,但在验证它是否具有“活动”类并验证点击是否在其自身之外时,它永远不会显示div,因为它的执行速度非常快。
这是我的代码:
var search = document.querySelector('.search');
document.addEventListener('click', function(event) {
var isClickInside = search.contains(event.target);
if (search.classList.contains('activo')) {
if (!isClickInside) {
search.classList.remove('activo');
}
}
});
.activo {
display: flex;
}
<div class="search">
<input type="text" class="searchTerm" placeholder="Buscar">
<button type="submit" class="searchButton" onclick="closeSearchBar()">
X
</button>
</div>