简体   繁体   English

Bootstrap导航选项卡:活动类不起作用

[英]Bootstrap nav tabs: active class doesnt work

Here's the HTML code: 这是HTML代码:

<div class="process">
      <h2 style="text-transform: uppercase;">The Application Process</h2>
      <br><br>
      <div class="row">
        <div class="col-md-3" align="left">
          <ul class="nav nav-pills flex-column" id="myTab" role="tablist">
            <li class="nav-item">
              <a class="nav-link active" data-toggle="tab" href="#home" role="tab" aria-controls="home">Home</a>
            </li>
            <li class="nav-item">
              <a class="nav-link" data-toggle="tab" href="#profile" role="tab" aria-controls="profile">Profile</a>
            </li>
            <li class="nav-item">
              <a class="nav-link" data-toggle="tab" href="#messages" role="tab" aria-controls="messages">Messages</a>
            </li>
            <li class="nav-item">
              <a class="nav-link" data-toggle="tab" href="#settings" role="tab" aria-controls="settings">Settings</a>
            </li>
          </ul>              
        </div>
        <div class="col-md-9">
          <div class="tab-content">
            <div class="tab-pane active" id="home" role="tabpanel">a</div>
            <div class="tab-pane" id="profile" role="tabpanel">b</div>
            <div class="tab-pane" id="messages" role="tabpanel">c</div>
            <div class="tab-pane" id="settings" role="tabpanel">d</div>
          </div>
        </div>
      </div>
    </div>

And here's the JS code: 这是JS代码:

<script>
  $(function () {
    $('#myTab a:last').tab('show')
  })
  $('ul.nav-pills li a').click(function (e) {
    $('ul.nav-pills li.active').removeClass('active')
    $(this).parent('li').addClass('active')
  })
</script>

The nav that have the active class is the home nav, but somehow the settings is the one who is active. 具有活动班级的导航仪是家庭导航仪,但是以某种方式设置是活动的导航仪。 I tried to search many times, but doesn't find the answer. 我尝试搜索了很多次,但是没有找到答案。

Is it the javascript or the container class? 是JavaScript还是容器类? Because I already use container before the div "process". 因为我已经在div“进程”之前使用了容器。 Thanks. 谢谢。

If you add the bootstrap JS and get rid of your JS code, it should work: 如果您添加了引导JS并摆脱了JS代码,则它应该可以工作:

 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script> <div class="process"> <h2 style="text-transform: uppercase;">The Application Process</h2> <br><br> <div class="row"> <div class="col-md-3" align="left"> <ul class="nav nav-pills flex-column" id="myTab" role="tablist"> <li class="nav-item active"> <a class="nav-link" data-toggle="tab" href="#home" role="tab" aria-controls="home">Home</a> </li> <li class="nav-item"> <a class="nav-link" data-toggle="tab" href="#profile" role="tab" aria-controls="profile">Profile</a> </li> <li class="nav-item"> <a class="nav-link" data-toggle="tab" href="#messages" role="tab" aria-controls="messages">Messages</a> </li> <li class="nav-item"> <a class="nav-link" data-toggle="tab" href="#settings" role="tab" aria-controls="settings">Settings</a> </li> </ul> </div> <div class="col-md-9"> <div class="tab-content"> <div class="tab-pane active" id="home" role="tabpanel">a</div> <div class="tab-pane" id="profile" role="tabpanel">b</div> <div class="tab-pane" id="messages" role="tabpanel">c</div> <div class="tab-pane" id="settings" role="tabpanel">d</div> </div> </div> </div> </div> 

Hope this helps. 希望这可以帮助。 :) :)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM