【发布时间】:2020-07-18 00:44:00
【问题描述】:
我正在尝试让 Bootstrap 4 导航栏只使用 vanilla js 而不是任何 jQuery。到目前为止,我已经能够让切换器触发导航在移动设备上折叠和关闭。我现在想弄清楚的是如何在单击“导航链接”时使导航栏折叠
这是我的导航 HTML:
<nav class="navbar navbar-expand-lg navbar-light bg-light shadow-lg p-3 mb-5 bg-white fixed-top">
<div class="container">
<a class="navbar-brand" href="#">Start Bootstrap</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive"
aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav ml-auto">
<li class="nav-item" >
<a class="nav-link" href="#about">About Us</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Browse Menu</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#visit">Contact</a>
</li>
</ul>
</div>
</div>
还有我的 JS 用于崩溃
(function () {
"use strict";
document.querySelectorAll("button.navbar-toggler")[0].addEventListener("click", function (event) {
var target = this.getAttribute("data-target");
var subbar = document.querySelectorAll(target)[0];
subbar.className = (subbar.className + " show").replace(/ show show/, "");
});
})();
但是我该如何做到这一点,当用户点击 <a class="nav-link" href="#"></a> 时它也会折叠导航栏?
谢谢!
【问题讨论】:
标签: javascript html twitter-bootstrap