我想了解如何在外部单击时隐藏元素。
这里是一个:
https://css-tricks.com/dangers-stopping-event-propagation/
$(document).on('click', function(event) {
if (!$(event.target).closest('#menucontainer').length) {
// Hide the menus.
}
});
有人可以帮我分解一下吗?我不明白为什么我们需要使用length属性?
另外,最接近的位置是否从DOM的起始位置开始遍历到DOM的顶部,然后停止就到达顶部?
干杯
最佳答案
您需要检查长度,因为jQuery查询始终返回结果,如果未找到结果,则为空。一旦检查了长度,就可以确定点击是在内部(长度> 0,找到一个元素)还是在外部(长度=== 0,没有找到元素)