Dropdown下拉菜单点击后不消失怎么办?

Prog.亚捷 阅读 4

我用原生JS写了个简单的下拉菜单,点击按钮显示菜单没问题,但点菜单项之后下拉框不自动收起,得再点别处才行。这体验太差了,咋解决啊?

我试过在菜单项的点击事件里加 dropdown.classList.remove('show'),但有时候会和其他逻辑冲突,比如需要先处理选中状态再关闭。

document.querySelector('.dropdown-btn').addEventListener('click', () => {
  dropdown.classList.toggle('show');
});

document.querySelectorAll('.dropdown-item').forEach(item => {
  item.addEventListener('click', () => {
    // 这里想关掉下拉,但有时会提前关闭导致数据没更新
    dropdown.classList.remove('show');
  });
});
我来解答 赞 1 收藏
二维码
手机扫码查看
暂无解答

暂无解答