我最近开始学习和使用Bootstrap 3.我想我会从一些简单的东西开始 - 一个标题和一个下拉栏。我使用了Bootstrap网站上的代码。
我从基本的Bootstrap模板开始,然后添加了bootstrap导航栏。到目前为止,这是我的代码。
<!DOCTYPE html>
<html>
<head>
<title>WEBSITE NAME</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="../../assets/js/html5shiv.js"></script>
<script src="../../assets/js/respond.min.js"></script>
<![endif]-->
</head>
<body>
<h1>WEBSITE NAME</h1>
<nav class="navbar navbar-default" role="navigation">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse navbar-ex1-collapse">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#">Tutorials</a></li>
<li><a href="#">Software</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li>
<li><a href="#">Something else here</a></li>
<li><a href="#">Separated link</a></li>
<li><a href="#">One more separated link</a></li>
</ul>
</li>
</ul>
<form class="navbar-form navbar-left" role="search">
<div class="form-group">
<input type="text" class="form-control" placeholder="Search">
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
<ul class="nav navbar-nav navbar-right">
<li><a href="https://twitter.com/"><span class="glyphicon glyphicon-comment"></span> Twitter</a></li>
<li><a href="https://youtube.com/"><span class="glyphicon glyphicon-facetime-video"></span> YouTube</a></li>
</ul>
</li>
</ul>
</div><!-- /.navbar-collapse -->
</nav>
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="//code.jquery.com/jquery.js"></script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="js/bootstrap.min.js"></script>
</body>
</html>
下拉菜单绝对不能正常工作 - 悬停或点击它。我需要做什么?
编辑:我使用了Safari网络检查器,资源“jquery.js”为红色(表示缺少)。这来自以下几行: 我是根据Bootstrap站点的默认基本页面编写的。 我不确定要更改路径以更正它。提供的项目文件夹中没有'jquery.js'文件。
答案 0 :(得分:1)
成功!
我注意到Safari web检查器中无法访问'code.jquery.com/jquery.js'文件。问题是这一行:
<script src="//code.jquery.com/jquery.js"></script>
无法访问该文件。出于某种原因,http:部分丢失了。将代码更改为
<script src="http://code.jquery.com/jquery.js"></script>
解决了这个问题!好哇!
附加说明:它认为,如果这是在线运行而非本地运行,则不需要http:部分。
答案 1 :(得分:0)
我在取出“html5shiv”和“respond.min”参考后运行你的代码,下拉菜单工作正常。我怀疑jQuery和Bootstrap JS文件的文件路径可能不正确。
答案 2 :(得分:0)
部分: -
<ul class="nav navbar-nav navbar-right">
<li><a href="https://twitter.com/"><span class="glyphicon glyphicon-comment"></span> Twitter</a></li>
<li><a href="https://youtube.com/"><span class="glyphicon glyphicon-facetime-video"></span> YouTube</a></li>
</ul>
</li>
</ul>
有一个额外的&lt; / ul&gt;和&lt; / li&gt; - 这可能不会导致你的问题,但不会有帮助...
答案 3 :(得分:0)
我在本地将这个确切的文件加载到我的WAMP服务器上,一切都运行得很好: 您可能希望在页面底部更改此内容: SRC = “http://code.jquery.com/jquery.js” 您的代码没有任何问题,HTML5 shiv和respond.js与您的菜单无关...
但是,您可能希望使用Google Chrome并使用inspect元素来确保您的参考点正确无误。
Hover在BS3中没有开箱即用,你可以使用自定义的javascript来实现......我在这里使用它:http://thisamericanjourney.com/ 将鼠标悬停在about菜单项上: //这允许用户将鼠标悬停在菜单上而不点击它
$(function() {
$('ul.nav li.dropdown').hover(function() {
$('.dropdown-menu', this).fadeIn('fast');
}, function() {
$('.dropdown-menu', this).fadeOut('fast');
});
});