首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有dropdown的药丸-激活dropdown

带有dropdown的药丸-激活dropdown
EN

Stack Overflow用户
提问于 2019-12-31 05:38:26
回答 1查看 24关注 0票数 0

我正在组装一个导航栏。代码如下:

代码语言:javascript
复制
<nav class="nav nav-pills">
  <a href="#" class="nav-item nav-link active" data-toggle="tab" routerLink="/home">
    <i class="fa fa-lg fa-home"></i> Home
  </a>
  <a href="#" class="nav-item nav-link" data-toggle="tab" routerLink="/alerts">
    <i class="fa fa-lg fa-bell"></i> Alerts
  </a>
  <div role="presentation" class="dropdown">

    <a class="dropdown-toggle nav-item nav-link" data-toggle="dropdown" href="#"
      role="button" aria-haspopup="true" aria-expanded="false">
      <i class="fa fa-lg fa-cog"></i> Settings
      <span class="caret"></span>
    </a>
    <div class="dropdown-menu">
      <a href="#" class="dropdown-item">Item 1</a>
      <a href="#" class="dropdown-item">Item 3</a>
    </div>
  </div>
</nav>

小提琴:Example

当我从下拉列表中选择某项内容时,如何使设置看起来处于活动状态?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-31 05:51:16

只需从第一个pill中删除硬编码的"active“类,并添加一些JS逻辑:

代码语言:javascript
复制
const navItems = document.querySelectorAll('.nav-item');
const settings = document.getElementById('settings');

for(var item of navItems) {
    item.addEventListener('click', (e) => {
       for(let item of navItems) item.classList.remove('active');
       e.target.classList.add('active');
    });
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59537112

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档