带有 Twitter Bootstrap 的下拉菜单
Posted
技术标签:
【中文标题】带有 Twitter Bootstrap 的下拉菜单【英文标题】:Dropdown menu with Twitter Bootstrap 【发布时间】:2012-03-09 04:31:42 【问题描述】:从this question 开始,我仍在为 Twitter Bootstrap 苦苦挣扎。我设法让我的导航栏出现,我正在尝试向它添加一个下拉菜单。无论我尝试什么,我实际上都无法让菜单的下拉部分正常工作!这是我的菜单截图。
如您所见,我有“帐户设置”,它应该是一个下拉菜单,但是当我单击它时,没有出现下拉选项。以下是我的代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title</title>
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/bootstrap.js")" type="text/javascript"></script>
<script type="text/javascript" src="http://twitter.github.com/bootstrap/assets/js/bootstrap-dropdown.js"></script>
<script type="text/javascript">
$(document).ready(function ()
$('.dropdown-toggle').dropdown();
);
</script>
<link href="@Url.Content("~/Content/bootstrap.min.css")" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="navbar">
<div class="navbar-inner">
<div class="container">
<ul class="nav">
<a class="brand" href="#">Present Ideas</a>
<li class="active"><a href="#">Home</a></li>
<li><a href="#">Blog</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Help</a></li>
<li class="dropdown" id="accountmenu">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">Account Settings<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#">Login</a></li>
<li><a href="#">Register</a></li>
<li class="divider"></li>
<li><a href="#">Logout</a></li>
</ul>
</li>
</ul>
</div>
</div>
</div>
<div class="container-fluid">
@RenderBody()
</div>
</body>
</html>
如您所见,我引用了来自 Twitter 的下拉 Javascript 文件。我也尝试过在本地引用它,这没有任何区别。我还包含了我认为应该连接下拉菜单并调用 Twitter 的 Javascript 文件的 Javascript。
我不知道为什么这不起作用
【问题讨论】:
【参考方案1】:请注意,在您的示例中使用此代码也是多余的:
<script type="text/javascript" language="javascript" >
$(document).ready(function ()
$('.dropdown-toggle').dropdown();
);
</script>
因为它什么也没做。
【讨论】:
【参考方案2】:我看不到您在代码中包含 jQuery 的位置。您必须在所有其他脚本之前包含它才能使下拉菜单起作用。
这是来自 google CDN 的 jQuery 脚本:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
【讨论】:
太棒了!那是一种享受。我最初确实包含了 1.5 jQuery 脚本,但似乎需要 1.7 版本。我还更改了标题中的顺序 - 我现在包括 CSS 文件,然后是脚本,因为反过来导致我的导航栏分成 2 行。感谢您的帮助。以上是关于带有 Twitter Bootstrap 的下拉菜单的主要内容,如果未能解决你的问题,请参考以下文章
Twitter bootstrap 在下拉菜单打开时停止传播
twitter bootstrap 下拉菜单的 z-index 问题
html Twitter Bootstrap - 多列下拉列表