You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击外部关闭汉堡导航栏的实现问题求助

点击外部关闭汉堡导航栏的实现问题求助

各位开发者好,我最近在做一个汉堡菜单组件,目前菜单的打开功能已经正常工作了,但关闭逻辑遇到了问题。

我原本的思路是给整个document加点击事件监听,判断点击的目标元素是不是导航容器本身,如果不是的话就移除导航栏的show类来关闭它。但实际运行下来,这个逻辑不仅没法关闭导航栏,连原本正常的打开功能都失效了……

以下是我写的代码:

document.addEventListener('click', (e)=>{
  const nav = document.getElementById('nav-container')
  if(e.target != nav){
    nav.classList.remove('show')
  }
})

// 导航栏打开函数
function showNav(){
  const nav = document.getElementById('nav-container')
  nav.classList.add('show')
}

有没有朋友能帮我看看哪里出问题了?

备注:内容来源于stack exchange,提问作者Mohammed Hassan Naseer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 12:14:32