如何检测元素外部的点击?

内容来自 DOC https://q.houxu6.top/?s=如何检测元素外部的点击?

我有一些HTML菜单,当用户点击这些菜单的头部时,我会完全显示它们。我希望在用户点击菜单区域外时隐藏这些元素。

这是否可以通过jQuery实现?

$("#menuscontainer").clickOutsideThisElement(function() {
    // 隐藏菜单
});

注意:使用stopPropagation应该避免,因为它会破坏DOM中正常的事件流。有关更多信息,请参阅此CSS Tricks文章。考虑改用此方法。

将点击事件附加到文档主体以关闭窗口。将单独的点击事件附加到容器以停止传播到文档主体。

$(window).click(function() {
  //如果菜单可见,则隐藏菜单
});

$('#menucontainer').click(function(event){
  event.stopPropagation();
});
posted @ 2023-10-30 23:23  小满独家  阅读(51)  评论(0)    收藏  举报