2014-09-02 283 views
0

我有以下呈现下拉(从我的Rails应用程序):bootstrap下拉不下拉?

<nav class="navbar navbar-inverse navbar-fixed-top topbar" role="navigation"> 
    <div class="container-fluid"> 
    <div class="navbar-header"> 
     <button class="navbar-toggle" data-target=".navbar-collapse" data-toggle="collapse" type="button"> 
     <span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span> 
     </button> 
     <a href="/"></a></div> 
    <div class="collapse navbar-collapse navbar-right"> 
     <ul class="nav navbar-nav"> 
     <li><a href="https://stackoverflow.com/users/edit">Edit account</a></li> 
     <li><a data-method="delete" href="https://stackoverflow.com/users/sign_out" rel="nofollow">Sign out</a></li> 
     <li class="dropdown"> 
      <a class="dropdown-toggle" data-toggle="dropdown" href="#">Admin<span class="caret"></span></a> 
      <ul class="dropdown-menu" role="menu"> 
      <li><a href="/users">Users</a></li> 
      <li><a href="#"> Another action</a></li> 
      <li class="divider"></li> 
      <li><a href="#"> Another action2</a></li> 
      </ul> 
     </li> 
     </ul> 
    </div> 
    </div> 
</nav> 

它显示是这样的:

partial_menu

它看起来不错,但下拉不起作用。我有一段时间的工作,但我不明白为什么这不起作用(下拉只是一个'#'的链接,即它不会下拉)。

日志文件没有任何内容。我不知道在哪里寻找解决这个问题。我该如何解决?

编辑:从头部标签 加js这些是包括:

<head> 
    <link href="http://fonts.googleapis.com/css?family=Ruda:400,900,700" media="screen" rel="stylesheet"> 
    <meta content="width=device-width, initial-scale=1.0" name="viewport"> 
    <title>title</title> 
    <meta content="title" name="description"> 
    <link data-turbolinks-track="true" href="/assets/framework_and_overrides.css?body=1" media="all" rel="stylesheet"> 
    <link data-turbolinks-track="true" href="/assets/application.css?body=1" media="all" rel="stylesheet"> 
    <script data-turbolinks-track="true" src="/assets/jquery.js?body=1"></script> 
    <style type="text/css"></style> 
    <script data-turbolinks-track="true" src="/assets/jquery_ujs.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/turbolinks.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/affix.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/alert.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/button.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/carousel.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/collapse.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/dropdown.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/tab.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/transition.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/scrollspy.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/modal.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/tooltip.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap/popover.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/bootstrap-sprockets.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/jetmenu.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/visitors.js?body=1"></script> 
    <script data-turbolinks-track="true" src="/assets/application.js?body=1"></script> 
    <meta content="authenticity_token" name="csrf-param"> 
    <meta content="***" name="csrf-token"> 
    <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" media="screen" rel="stylesheet"> 
</head> 
+0

如果您在dropdown.js或bootstrap.js之前包含了另一个JavaScript文件,那么该文件中可能会出现一个错误,导致进一步的脚本无法执行?脚本之间也可能有冲突。 – 2014-09-02 20:51:44

+0

它应该包含在我的应用程序布局中,但我会检查。尽管我的网页没有使用bootstrap吗?或者在控制台中抛出一个错误? – Jeff 2014-09-02 20:55:53

+0

页面仍然会显示,但它不会执行Bootstrap所需的任何JavaScript。如果其他交互式元素正在工作,那么您可能会包含脚本。 你有jQuery吗?它是所有Bootstrap插件所必需的。 – 2014-09-02 21:00:44

回答

1

你必须通过JavaScript来调用下拉菜单:

<script> 
     $('.dropdown-toggle').dropdown(); 
    </script> 

添加该代码在脚本

DEMO