【问题标题】:Why can't I change .active state in the bootstrap navbar?为什么我不能在引导导航栏中更改 .active 状态?
【发布时间】:2016-12-03 09:22:48
【问题描述】:

我是 bootstrap 和 jquery 的初学者。 我不能使用 jquery 来改变 .active 的导航栏。

在 head 部分,我已经导入了 bootstrap 和 jquery。

<link href="./dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="./dist/js/bootstrap.min.js"></script>

这是我的代码

<div class="navbar-wrapper">
  <div class="container">

    <nav class="navbar navbar-default navbar-static-top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
        </div>
        <div id="navbar" class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li ><a href="#">Home</a></li>
            <li class="active"><a href="http://ezcourse.nctu.me/">Tutorial</a></li>
            <li><a href="#contact">Contact</a></li>
          </ul>
        </div>
      </div>
    </nav>

  </div>
</div>

这是我的 js 代码。

$(function () {
    $(".nav a").on("click", function(){
        $(".nav").find(".active").removeClass("active");
        $(this).parent().addClass("active");
    });
});

当我点击不同的 标签时,.active 状态没有改变。

我用谷歌搜索并找到了这个例子 Bootstrap navbar Active State not working

但是,我尝试复制这些代码并粘贴到我的代码中。 jsfiddle example 还是不行。

但是,它可以在他们的网页上运行。

我不知道如何解决这个问题...

【问题讨论】:

  • 可能是缓存问题...您是否尝试清空它?
  • 我试图删除其他组件。还是不行……

标签: jquery twitter-bootstrap navbar


【解决方案1】:

亲爱的你的头文件在这里没有正确链接。

请检查一次

试试这个..

$(function () {
    $(".nav a").on("click", function(){
        $(".nav").find(".active").removeClass("active");
        $(this).addClass("active");
    });
});
<link href="./dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="./dist/js/bootstrap.min.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>



<div class="navbar-wrapper">
  <div class="container">

    <nav class="navbar navbar-default navbar-static-top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
        </div>
        <div id="navbar" class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li ><a href="#">Home</a></li>
            <li class="active"><a href="http://ezcourse.nctu.me/">Tutorial</a></li>
            <li><a href="#contact">Contact</a></li>
          </ul>
        </div>
      </div>
    </nav>

  </div>
</div>

【讨论】:

  • 感谢您的提醒。我发现这个问题是我的愚蠢错误。我忘了导入 clickFunction.js 文件....
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-04-21
  • 2022-12-14
  • 1970-01-01
  • 2019-08-03
  • 2015-03-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多