Twitter Bootstrap下拉菜单

7

这个问题之后,我仍然在苦苦挣扎Twitter Bootstrap。我已经成功让我的导航栏出现了,现在我想在它上面添加一个下拉菜单。但是无论我尝试什么,都不能让下拉菜单正常工作!以下是我的菜单截图。

navigation bar

如您所见,我有一个名为“账户设置”的下拉菜单,但当我点击它时,没有任何下拉选项出现。以下是我的代码:

<!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代码。

我不知道为什么这不起作用。

2个回答

12

我看不到您在代码中包含jQuery的位置。您必须在所有其他脚本之前包含它,才能使下拉菜单正常工作。

这是从Google CDN获取的jQuery脚本:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>

2
太棒了!这个方法很有效。我最初包含了1.5版本的jQuery脚本,但似乎需要1.7版本。我还改变了头部文件的顺序 - 现在我先包含CSS文件,然后再包含脚本,因为反过来会导致我的导航栏分成两行。感谢您的帮助。 - Stuart Leyland-Cole

5
注意,在您的示例中使用此代码也是多余的:
<script type="text/javascript" language="javascript" >
    $(document).ready(function () {
          $('.dropdown-toggle').dropdown();
    }); 
 </script>

因为它没有执行任何操作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接