Javascript 下拉菜单单击外部

Javascript 下拉菜单单击外部,javascript,angular,Javascript,Angular,我有一个按钮汉堡菜单和下拉菜单就在他下面。 当我点击我的汉堡按钮时,我想要我的下拉菜单出现。 当我在下拉菜单外单击时,我希望它们消失。。。从那时起,逻辑就一直存在 但我的按钮谁触发出现也在外的下拉菜单。。。因此,如果我在clickoutside下拉列表中放置一个事件,我的按钮将永远不会被触发click event+clickoutside dropdown=>什么都不会发生 那我该怎么做呢 给按钮一个尚未使用的类名,然后在单击事件上检查$event目标及其类列表。如果它具有您选择的类名,请忽略“

我有一个按钮汉堡菜单和下拉菜单就在他下面。 当我点击我的汉堡按钮时,我想要我的下拉菜单出现。 当我在下拉菜单外单击时,我希望它们消失。。。从那时起,逻辑就一直存在

但我的按钮谁触发出现也在外的下拉菜单。。。因此,如果我在clickoutside下拉列表中放置一个事件,我的按钮将永远不会被触发click event+clickoutside dropdown=>什么都不会发生


那我该怎么做呢

给按钮一个尚未使用的类名,然后在单击事件上检查$event目标及其类列表。如果它具有您选择的类名,请忽略“单击外部”事件


如果您提供一些代码示例,我可以为您提供一步一步的操作方法。

我对这个问题有点困惑,但我会继续回答,并了解我对这个问题的理解。 因此,你有一个汉堡图标,下面是一个菜单下拉菜单,点击汉堡图标,你想打开菜单下拉菜单,点击除此之外的其他按钮,应该关闭下拉菜单-面临的问题:汉堡也在菜单下拉菜单之外

您可以对event.target应用检查,以确定它是否不符合下拉列表和hamburger中包含的特定类的存在,因此,每当单击文档时,如果event.target未包含元素中存在的类,则通过应用可折叠类关闭下拉列表

注:

.menu元素是应用于汉堡元素以及菜单下拉元素的类

$document.clickfunction{ 如果!$e.target.is'.menu元素'{ $'.collapse'。collapse'hide'; }
};这不是答案。如果您需要OP对一个格式不好的问题进行更多澄清,请使用评论部分。请阅读并提供