html - 单击菜单后如何添加CSS类并突出显示当前菜单

标签 html css twitter-bootstrap

我在这里使用带有多个 css 类的自定义 Bootstrap 导航栏。我发现在所选元素菜单上添加事件 (menu__item--current) 类时遇到困难。我在底部添加了 jquery 代码.

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<div class="container">
  <nav class="navbar navbar-default navbar-fixed-top">
    <div class="navbar-header navbar-left">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
						<span class="sr-only">Toggle navigation</span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
					</button>
      <a href="<?php echo ROOT;?>index.php"><img src="<?php echo ROOT;?>images/logob.png" width="70px" class="logo img-responsive"> </a>
    </div>
    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse navbar-right" id="bs-example-navbar-collapse-1">
      <nav class="menu menu--iris">
        <ul class="nav navbar-nav menu__list ">
          <li class="menu__item menu__item--current "><a href="<?php echo ROOT;?>portfolio.php" class="menu__link">portfolios</a></li>
          <li class="menu__item "><a href="<?php echo ROOT;?>team.php" class="menu__link">our team</a></li>
          <li class="menu__item ">
            <a href="#" class="menu__link">career</a></li>
          <li class="menu__item"><a href="#" class="menu__link">Contact</a></li>

          <li class="menu__item"><a href="#" class="menu__link">about</a></li>
          <li class="menu__item"><a href="#" class="menu__link">members</a></li>
          <li class="menu__item"><a href="#" class="menu__link">news</a></li>

        </ul>
      </nav>
    </div>
  </nav>
</div>

<script type="text/javascript">

$(document).ready(function () {
    $('ul.nav > li').click(function () {
      
        $('ul.nav > li').removeClass('menu__item--current');
        $(this).addClass('menu__item--current');                
    });            
});
</script>

      

最佳答案

它工作正常你需要像这样添加css

$(document).ready(function () {
    $('ul.nav > li').click(function () {
      
        $('ul.nav > li').removeClass('menu__item--current');
        $(this).addClass('menu__item--current');                
    });            
});
.menu__item--current a{
  color:#ee5500!important;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<div class="container">
  <nav class="navbar navbar-default navbar-fixed-top">
    <div class="navbar-header navbar-left">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
						<span class="sr-only">Toggle navigation</span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
					</button>
      <a href="<?php echo ROOT;?>index.php"><img src="<?php echo ROOT;?>images/logob.png" width="70px" class="logo img-responsive"> </a>
    </div>
    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse navbar-right" id="bs-example-navbar-collapse-1">
      <nav class="menu menu--iris">
        <ul class="nav navbar-nav menu__list ">
          <li class="menu__item menu__item--current "><a href="<?php echo ROOT;?>portfolio.php" class="menu__link">portfolios</a></li>
          <li class="menu__item "><a href="<?php echo ROOT;?>team.php" class="menu__link">our team</a></li>
          <li class="menu__item ">
            <a href="#" class="menu__link">career</a></li>
          <li class="menu__item"><a href="#" class="menu__link">Contact</a></li>

          <li class="menu__item"><a href="#" class="menu__link">about</a></li>
          <li class="menu__item"><a href="#" class="menu__link">members</a></li>
          <li class="menu__item"><a href="#" class="menu__link">news</a></li>

        </ul>
      </nav>
    </div>
  </nav>
</div>

关于html - 单击菜单后如何添加CSS类并突出显示当前菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49359594/

相关文章:

php - 指定详细表单信息

asp.net - 如何使用 ASP.NET 代码即时编辑 CSS?

html - 可以在视口(viewport)断点处将容器/行转换为容器流体/行流体吗?

javascript - 单击 Bootstrap Accordion 时打开 url/文件

python - 如何在 django 中链接到其他用户的个人资料?

html - 如何居中 MySQL 表?

html - Safari 8 多选滚动问题

jquery - 强制 Bootgrid 分页元素相对于其父容器保留在一个位置,而不管表行数如何?

HTML/CSS : "See Through Background" Text?

twitter-bootstrap - 在 Bootstrap 3.0 中禁用列表组项