【问题标题】:Bootstrap collapse button responding but not working引导折叠按钮响应但不起作用
【发布时间】:2019-10-23 19:05:33
【问题描述】:

我遇到了著名的导航栏按钮无法正常工作的问题。我确保我的脚本导入是有序的并且 HTML 位看起来不错。我在本地主机上加载它,但它不起作用。

HTML:

<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
     <span class="navbar-toggler-icon icon"></span>
</button>

<div class="collapse navbar-collapse" id="navbarSupportedContent">
     <ul class="navbar-nav mr-auto ml-auto">
             <li class="nav-item active">
                    <a class="nav-link" href="#mh-home">Home</a>
             </li>

      </ul>
</div>

IMPORTS(在正文标签的末尾):

<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>

*更新:

我在此处发布了正在测试的网站:尝试您的解决方案后无法正常工作:/

http://conuplugs.com/secret.html

【问题讨论】:

  • 我认为你错过了 bootstrap.min.css 这就是它不起作用的原因!
  • 您好,我希望但我将它导入到 head 标签中:&lt;link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"&gt;
  • 它的工作完美
  • 对我也很好!
  • 我发了GIF,没用

标签: bootstrap-4


【解决方案1】:

使用 jQuery 的 Slim 版本会删减大量使某些东西能够工作的代码。看看这个answer

在 jquery.slim.js 中,删除了以下功能:

  1. jQuery.fn.extend
  2. jquery.fn.load
  3. jquery.each // 附加一堆处理常见AJAX事件的函数
  4. jQuery.expr.filters.animated
  5. ajax 设置,例如 jQuery.ajaxSettings.xhr、jQuery.ajaxPrefilter、jQuery.ajaxSetup、jQuery.ajaxPrefilter、jQuery.ajaxTransport、jQuery.ajaxSetup
  6. xml解析类似于jQuery.parseXML,
  7. jQuery.easing、jQuery.Animation、jQuery.speed 等动画效果

所有插件都使用 jQuery 扩展函数,而且很多插件也使用动画函数。

改用完整的 jQuery 脚本。

【讨论】:

  • 你也可以使用 jquery slim,bootstrap 也建议使用 jquery slim,getbootstrap.com/docs/4.3/getting-started/introduction/#js我们使用 jQuery 的 slim 构建,但也支持完整版。
  • @NishargShah 嗯,这很公平。但是在使用 Slim 版本时需要注意,某些功能可能无法正常工作,如果不使用 Bootstrap,然后使用其他插件。
  • 我知道,但是 OP 在 bootstrap 中有问题,所以我评论了它
【解决方案2】:

它工作正常,我只从ul 中删除了ml-auto

欲了解更多信息,请转到https://getbootstrap.com/docs/4.3/components/navbar/

编辑

mh-xs-mobile-nav 这个类正在尝试阻止导航栏折叠。

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <a class="navbar-brand" href="#">Navbar</a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>

  <div class="collapse navbar-collapse" id="navbarSupportedContent">
    <ul class="navbar-nav mr-auto">
      <li class="nav-item active">
        <a class="nav-link" href="#mh-home">Home</a>
      </li>
    </ul>
  </div>
</nav>

<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>

【讨论】:

  • 添加这个类来调试你的菜单问题,navbar-dark bg-dark in nav 标签
  • 嘿,我调试并找到了问题的根源。我有 2 个 CSS 文件:styles.cssresponsive.css,当我添加响应式时,会出现错误。我可以把文件发给你看看吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-30
  • 1970-01-01
  • 1970-01-01
  • 2018-03-16
  • 2016-12-13
相关资源
最近更新 更多