在 bootstrap 导航栏上,下拉选项卡正常工作,但会阻止其他主菜单选项卡链接工作
On bootstrap navbar, dropdown tab works properly, but prevents other main menu tab links work
我看到了很多类似的问题,none 的答案对我有用。
我的 bootstrap 导航栏工作正常,直到我为其中一个选项卡添加了子菜单,并将其设置为下拉列表。但在此之后,主菜单上的其他选项卡停止工作。这是我的 html 头像的一部分:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js "></script>
<script type="text/javascript" src="app.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
这是我的导航栏:
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="index">Home</a></li>
<li><a href="resume" data-toggle="tab">Resume</a></li>
<li class="dropdown">
<a href="java" class="dropdown-toggle" data-toggle="dropdown">Portfolio
<span class="caret"></span></a>
<ul class="dropdown-menu" role="menu">
<li class="secondLayer"><a class="font" href="java">Java</a></li>
<li class="secondLayer"><a href="cSharp">C-sharp</a></li>
<li class="secondLayer"><a href="uml">UML</a></li>
</ul>
</li>
<li><a href="contactMe" data-toggle="tab">Contact Me</a></li>
<li><a href="aboutMe" data-toggle="tab">About Me</a></li>
</ul>
有人可以帮我解决这个问题吗?
在您添加下拉列表之前,我不确定它是如何工作的。问题是您的所有标签都像 href="index"
并且缺少 #
以表明它们是 ID。全部改成这样href="#index"
。请参阅以下示例:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#index">Home</a></li>
<li><a href="#resume" data-toggle="tab">Resume</a></li>
<li class="dropdown">
<a href="java" class="dropdown-toggle" data-toggle="dropdown">Portfolio
<span class="caret"></span></a>
<ul class="dropdown-menu" role="menu">
<li class="secondLayer"><a class="font" href="java">Java</a></li>
<li class="secondLayer"><a href="cSharp">C-sharp</a></li>
<li class="secondLayer"><a href="uml">UML</a></li>
</ul>
</li>
<li><a href="#contactMe" data-toggle="tab">Contact Me</a></li>
<li><a href="#aboutMe" data-toggle="tab">About Me</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="index">index</div>
<div class="tab-pane" id="resume">resume</div>
<div class="tab-pane" id="contactMe">contactMe</div>
<div class="tab-pane" id="aboutMe">aboutMe</div>
</div>
注意 如果你真的希望这些是 链接 而不是标签,你使用了错误的元素,去掉所有的对选项卡的引用和切换,并在您的 href 中使用 url,例如 href="index.html"
如果您只想让选项卡像链接一样工作,只需从所有内容中删除 data-toggle="tab"
。 Bootstrap 插入了一些 JS,以便您的选项卡激活并且非常适合常规导航,但如果您只希望它们成为链接并且只想要 CSS,则无需附加该功能。
这是一个fiddle。
我看到了很多类似的问题,none 的答案对我有用。 我的 bootstrap 导航栏工作正常,直到我为其中一个选项卡添加了子菜单,并将其设置为下拉列表。但在此之后,主菜单上的其他选项卡停止工作。这是我的 html 头像的一部分:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js "></script>
<script type="text/javascript" src="app.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
这是我的导航栏:
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="index">Home</a></li>
<li><a href="resume" data-toggle="tab">Resume</a></li>
<li class="dropdown">
<a href="java" class="dropdown-toggle" data-toggle="dropdown">Portfolio
<span class="caret"></span></a>
<ul class="dropdown-menu" role="menu">
<li class="secondLayer"><a class="font" href="java">Java</a></li>
<li class="secondLayer"><a href="cSharp">C-sharp</a></li>
<li class="secondLayer"><a href="uml">UML</a></li>
</ul>
</li>
<li><a href="contactMe" data-toggle="tab">Contact Me</a></li>
<li><a href="aboutMe" data-toggle="tab">About Me</a></li>
</ul>
有人可以帮我解决这个问题吗?
在您添加下拉列表之前,我不确定它是如何工作的。问题是您的所有标签都像 href="index"
并且缺少 #
以表明它们是 ID。全部改成这样href="#index"
。请参阅以下示例:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#index">Home</a></li>
<li><a href="#resume" data-toggle="tab">Resume</a></li>
<li class="dropdown">
<a href="java" class="dropdown-toggle" data-toggle="dropdown">Portfolio
<span class="caret"></span></a>
<ul class="dropdown-menu" role="menu">
<li class="secondLayer"><a class="font" href="java">Java</a></li>
<li class="secondLayer"><a href="cSharp">C-sharp</a></li>
<li class="secondLayer"><a href="uml">UML</a></li>
</ul>
</li>
<li><a href="#contactMe" data-toggle="tab">Contact Me</a></li>
<li><a href="#aboutMe" data-toggle="tab">About Me</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="index">index</div>
<div class="tab-pane" id="resume">resume</div>
<div class="tab-pane" id="contactMe">contactMe</div>
<div class="tab-pane" id="aboutMe">aboutMe</div>
</div>
注意 如果你真的希望这些是 链接 而不是标签,你使用了错误的元素,去掉所有的对选项卡的引用和切换,并在您的 href 中使用 url,例如 href="index.html"
如果您只想让选项卡像链接一样工作,只需从所有内容中删除 data-toggle="tab"
。 Bootstrap 插入了一些 JS,以便您的选项卡激活并且非常适合常规导航,但如果您只希望它们成为链接并且只想要 CSS,则无需附加该功能。
这是一个fiddle。