我想了解如何在外部单击时隐藏元素。

这里是一个:

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,没有找到元素)

09-30 16:08
查看更多