【问题标题】:bootstrap - navbar not closing on mobilebootstrap - 导航栏未在移动设备上关闭
【发布时间】:2015-12-05 13:24:04
【问题描述】:

我正在使用 ruby​​ on rails 和 bootstrap 来开发我的第一个网站。我网站中的导航栏是使用引导程序实现的。但是,在mobile 上打开导航栏后,它不会关闭。如果您单击或点击右上角的“菜单”按钮,导航栏将打开,但如果您再次或在外部点击该按钮,则导航栏不会关闭并继续闪烁。

与移动设备上的相同代码相关的另一个问题是,下拉菜单根本无法打开。我认为这与菜单的悬停功能有关,但我似乎无法修复它。

这是我的代码。

HTML:

<nav class="navbar navbar-default navbar-fixed-top" role="navigation" id="navbar_id" data-toggle="collapse" data-target=".navbar-collapse"> <!-- START OF NAVIGATION BAR -->
    <div class="container"><!-- START OF CONTAINER -->
        <div class="navbar-header">
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
            </button>
            <%= link_to image_tag("logo.png", class: "img-responsive"), root_path, class:"name" %>
        </div>
          <div class="collapse navbar-collapse">
            <ul class="nav navbar-nav" id="navbar_menus">
              <li><%= link_to "Item1", sample_path%></li>
              <li><%= link_to "Item2", sample_path%></li>
              <li><%= link_to "Item3", sample_path %></li>

              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Programs<b class="caret"></b></a>
                <ul class="dropdown-menu">
                  <li><%= link_to "Item1", sample_path%></li>
                  <li><%= link_to "Item2", sample_path%></li>
                  <li><%= link_to "Item3", sample_path%></li>
                </ul>
              </li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
                <ul class="dropdown-menu">
                  <li><%= link_to "Item1", sample_path%></li>
                </ul>
              </li>

              <li><%= link_to "Contact Us", sample_path %></li>

            </ul>
    </div><!-- END OF CONTAINER -->
</nav><!-- END OF NAVIGATION BAR -->

CSS:

#navbar_menus{
    padding: 3.6em 0 0 1em;
}

@media (min-width: 979px) {
  ul.nav li.dropdown:hover > ul.dropdown-menu {
    display: block;
  }
}

【问题讨论】:

  • 您是否将 bootstrap.js 作为脚本源添加到您的文件中? jQuery 也需要它,否则任何引导“动画”元素都不起作用。在这里,您会在 [Bootstrap 官方文档] (getbootstrap.com/getting-started) 中找到它的解释
  • 我使用 CDN 链接到引导文件。
  • 抱歉……我有点跑题了……什么是 CDN?
  • @VirtuaCreative bootstrapcdn.com
  • 嗯好吧..我不熟悉这个定制版本,但我相信你会需要 JavaScript 源代码(由你发给我的链接给出),如果还不够,你可能会需要 jQuery 的脚本源,在 CDN 脚本之前,因为原始引导 JS 需要它。

标签: html css ruby-on-rails twitter-bootstrap mobile


【解决方案1】:

好像你没有关闭 div:

<div class="collapse navbar-collapse">

这可能会导致一些问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-01
    • 2016-11-04
    • 2021-04-11
    • 1970-01-01
    • 2015-04-30
    • 1970-01-01
    • 2017-08-26
    • 2016-07-10
    相关资源
    最近更新 更多