我正在学习引导通过更改示例。我试图创建的下拉菜单应该有三个链接。主标签应链接到someroute
,而通过下拉菜单显示的两个链接应分别让用户点击route3
和route4
。但是,应该有三个工作链接的是死链接。 需要对下面的代码进行哪些具体更改才能使菜单栏中的所有四个链接都能正常工作,包括下拉菜单中的三个链接?为什么这个下拉菜单填充工作链接?
这是a plnkr that recreates the problem including the code below。
这里的index.html,其中包括在下拉菜单中的引导代码:
<!DOCTYPE html>
<html>
<head>
<script>document.write('<base href="' + document.location + '" />');</script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.20/angular.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.20/angular-route.js"></script>
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" />
<link href="style.css" rel="stylesheet"/>
<style type="text/css">
[ng\:cloak], [ng-cloak], .ng-cloak { display: none !important; }
</style>
</head>
<body class="ng-cloak" ng-cloak="" ng-app="hello">
<div class="container" ng-controller="navigation">
<ul class="nav nav-pills" role="tablist">
<li ng-class="{active:tab('home')}"><a href="/">Home</a></li>
<li class="dropdown">
<a ng-class="{active:tab('someroute')}" class="dropdown-toggle" data-toggle="dropdown" href="/someroute">Some route
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li ng-class="{active:tab('route3')}"><a href="/route3">route three</a></li>
<li ng-class="{active:tab('route4')}"><a href="/route4">route four</a></li>
</ul>
</li>
</ul>
</div>
<div class="container" ng-view=""></div>
<script type="text/javascript" src="home.js"></script>
<script type="text/javascript" src="someroute.js"></script>
<script type="text/javascript" src="navigation.js"></script>
<script type="text/javascript" src="script.js"></script>
</body>
</html>
这个改变除了按照另一个用户的已删除答案的建议添加'#',解决了这个问题。查看更新后的plnkr:http://plnkr.co/edit/T96QWX1uEccH34l2Ievt?p=preview – CodeMed
您是否愿意评论如何让下拉菜单显示在鼠标上而不是点击鼠标?这将节省一个单独的张贴。谢谢你+1。 – CodeMed
当然,似乎bootstrap默认不支持它,但这里的第一个答案提供了一个非常简单的解决方案来自己做:http://stackoverflow.com/questions/16214326/bootstrap-dropdown-with-hover – jcane86