首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Bootstrap Navbar Toggler -自定义JS使导航栏菜单在下拉单击时关闭

Bootstrap Navbar Toggler是Bootstrap框架中的一个组件,用于创建响应式导航栏菜单。它允许用户在移动设备上点击菜单按钮时,自动展开或折叠导航栏菜单。

使用自定义JS可以实现在下拉单击时关闭导航栏菜单的功能。具体实现步骤如下:

  1. 首先,为导航栏菜单按钮添加一个点击事件监听器。
  2. 在点击事件处理函数中,获取导航栏菜单的状态,判断当前菜单是否已经展开。
  3. 如果菜单已经展开,则使用Bootstrap提供的方法将菜单折叠起来。
  4. 如果菜单已经折叠,则不执行任何操作。

以下是一个示例代码,演示如何使用自定义JS实现导航栏菜单在下拉单击时关闭:

代码语言:txt
复制
<!DOCTYPE html>
<html>
<head>
  <title>Bootstrap Navbar Toggler</title>
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css">
</head>
<body>
  <nav class="navbar navbar-expand-lg navbar-light bg-light">
    <div class="container-fluid">
      <a class="navbar-brand" href="#">Logo</a>
      <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
      </button>
      <div class="collapse navbar-collapse" id="navbarNav">
        <ul class="navbar-nav">
          <li class="nav-item">
            <a class="nav-link" href="#">Home</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#">About</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#">Services</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#">Contact</a>
          </li>
        </ul>
      </div>
    </div>
  </nav>

  <script>
    // 获取导航栏菜单按钮
    var navbarToggler = document.querySelector('.navbar-toggler');

    // 添加点击事件监听器
    navbarToggler.addEventListener('click', function() {
      // 获取导航栏菜单的状态
      var isExpanded = navbarToggler.getAttribute('aria-expanded');

      // 判断菜单是否已经展开
      if (isExpanded === 'true') {
        // 使用Bootstrap提供的方法将菜单折叠起来
        navbarToggler.click();
      }
    });
  </script>
</body>
</html>

在上述示例代码中,我们使用了Bootstrap框架提供的CSS和JavaScript库。通过自定义的JavaScript代码,我们为导航栏菜单按钮添加了一个点击事件监听器。在点击事件处理函数中,我们判断菜单的展开状态,并使用Bootstrap提供的方法将菜单折叠起来。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云CDN。

  • 腾讯云云服务器(CVM):提供高性能、可扩展的云服务器实例,适用于各种应用场景。详情请参考:腾讯云云服务器
  • 腾讯云CDN:提供全球加速、高可用的内容分发网络服务,可加速网站、应用、音视频等内容的传输。详情请参考:腾讯云CDN
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【Java 进阶篇】深入了解 Bootstrap 表格和菜单

本文中,我们将深入探讨 Bootstrap 中表格和菜单的使用,适合初学者,帮助他们更好地理解和应用这些元素。 什么是 Bootstrap 表格?...什么是 Bootstrap 菜单菜单是网页上的导航元素,用于帮助用户浏览和导航到不同的页面或功能。Bootstrap 提供了多种菜单组件,如导航下拉菜单和标签页,以满足不同导航需求。... 元素:这是按钮元素,用于切换导航的折叠状态。 class="navbar-toggler-icon":这是 Bootstrap 提供的按钮图标,用于切换导航的展开和折叠状态。...-- 导航栏内容 --> 这些样式可以根据您的设计需求来选择,以使导航与您的网站或应用程序一致。 下拉菜单 下拉菜单导航中常见的交互元素,它们允许用户访问更多选项。...用户可以点击 “下拉菜单” 链接以显示下拉选项。 标签页 标签页是一种常见的导航元素,用于切换不同页面或内容。Bootstrap 提供了标签页组件,使您可以轻松创建标签页导航

25730

【Java 进阶篇】深入了解 Bootstrap 组件

元素:这是按钮元素,用于切换导航的折叠状态。 class="navbar-toggler-icon":这是 Bootstrap 提供的按钮图标,用于切换导航的展开和折叠状态。...-- 导航栏内容 --> 这些样式可以根据您的设计需求来选择,以使导航与您的网站或应用程序一致。 下拉菜单 下拉菜单导航中常见的交互元素,它们允许用户访问更多选项。...以下是一个示例,展示如何在导航中创建下拉菜单: <a class=...用户可以点击 “下拉菜单” 链接以显示下拉选项。 标签页 标签页是一种常见的导航元素,用于切换不同页面或内容。Bootstrap 提供了标签页组件,使您可以轻松创建标签页导航。...本文中,我们探讨了一些常用的 Bootstrap 组件,包括按钮、表格、导航、警告框、模态框和进度条。这些组件可以根据您的需求进行自定义,并在网页设计中发挥重要作用。

20120
  • 【Java 进阶篇】深入理解 Bootstrap 导航条与分页条

    Bootstrap 导航导航条(Navbar)是网站上方常见的导航元素,通常包括网站的标志、菜单项、搜索框等。Bootstrap 提供了易于使用的导航条组件,使您可以轻松创建专业的导航。... 元素:这是按钮元素,通常用于小屏幕上切换导航的可见性。...class="navbar-toggler-icon":这是 Bootstrap 提供的按钮图标,用于小屏幕上切换导航的可见性。 class="navbar-nav":这是导航条的导航项容器。...Bootstrap 提供了易于创建的下拉菜单组件。...点击链接 “下拉菜单” 将显示下拉菜单中的选项。这是一种很好的方式来组织和呈现导航选项。 Bootstrap 分页条 分页条是用于分页显示大量内容的常见组件。

    24620

    Bootstrap实用功能总结

    导航navbar 导航容器可以包含以下几个常用组成: 1、品牌LOGO(.navbar-brand ) 2、导航菜单(.navbar-nav) 3、导航文本(.navbar-text) 4、... 导航容器可用样式: .navbar 导航基础样式 .navbar-expand-{sm | md | xl | lg} 响应式导航,大屏幕水平铺开,小屏幕垂直堆叠 .flex-top 导航一直顶部....flex-bottom 导航一直顶部 .bg-{primary | secondary | success | info | danger | warning | dark | light} 导航的背景颜色...: .navbar-toggler 2、折叠按钮内加上折叠图标,样式: .navbar-toggler-icon 3、菜单要包含一个容器内,容器必须包含样式: .collapse 和 .navbar-collapse...pill }" 定义一个动态选项卡 或 动态胶囊选项卡 href = "#id" 动态导航,指明要显示的容器ID 动态选项卡容器样式 .tab-pane 动态选项卡容器类,必须要加 动态下拉选项卡示例

    2.5K30

    Jump Start Bootstrap 第4章

    扩展功能 想象一个没有任何下拉功能的菜单。有点无聊,对吧?上一章,导航只包含一个简单的链接列表。本节中,我们将使用一些Bootstrap的JavaScript插件帮助扩展我们网站现有组件的功能。...我们将会看到如何添加下拉菜单导航、切换按钮的状态、当点击按钮漂亮的警告信息会在显示一段时间后消失等等功能。...现在,我们有了一个简单的下拉菜单单击链接显示菜单。我们可以浏览器中查看它,如图所示。 ? 让我们结合使用下拉式插件和我们在前一章中创建的标签和按钮菜单。...Bootstrap下拉插件提供了一些附加事件,它们是: show.bs.dropdown: 这个事件句柄被单击触发;下拉句柄收到请求去显示隐藏菜单; shown.bs.dropdown: 这个事件菜单被显示触发...添加data-dismiss使按钮单击关闭模式对话框。 对于本体,我们需要一个包含类modal-body的元素。您可以将几乎任何内容放到该元素中。

    28.3K40

    【Java 进阶篇】Bootstrap 快速入门

    Bootstrap 提供了各种现成的样式和组件,可用于创建导航、按钮、表格、表单、模态框等等,使开发者能够快速搭建各种网页元素。 为什么要使用 Bootstrap?...Bootstrap 组件 Bootstrap 提供了大量的组件,如导航、按钮、表格、表单、模态框等等,可以轻松地添加到您的网页中。...以下是一些常用组件的示例: 导航 您可以使用 Bootstrap 创建导航,如下所示: <nav class="<em>navbar</em> <em>navbar</em>-expand-lg <em>navbar</em>-light bg-light...<em>Bootstrap</em> 的<em>导航</em><em>栏</em>具有响应式特性,可以<em>在</em>不同设备上正常显示。 按钮 <em>Bootstrap</em> 提供了多种按钮样式,您可以轻松添加到您的网页中。...<em>Bootstrap</em> 的表格样式<em>使</em>表格更易于阅读和<em>导航</em>。 表单 <em>Bootstrap</em> 也提供了各种表单组件,如文本框、单选按钮、复选框等。

    23510

    移动端也能兼容的web页面制作2:导航、背景图片设置

    MDBootstrap 导航、背景图片设置 效果图 第一章:背景图片设置 ① 放置图片 ② 引入图片 ③ 图片蒙层 第二章:导航设置 ① 基础导航添加 ② 下拉菜单菜单跳转 第三章:其它 ①...第二章:导航设置 ① 基础导航添加 因为导航一直要存在页面中,所以我设置了将导航添加到 App.vue 里,和 并列在其上面,后面主要内容都会在导航的下面进行切换...> 这个是导航的效果,还包含个搜索项。...② 下拉菜单 添加个下拉菜单的效果,可以将一些小的菜单合并到里面,保持整体的简洁美观。...从医院返回,已经是子夜时分。静谧的小镇街道早已一片漆黑,地面上却依旧像蒸笼一般湿热。离我家还有十来分钟路程,而且还要经过一个百余米长、坑坑洼洼的下坡路。我家城乡接合部,当时周围没有路灯。

    1.4K20

    BootStrap】图片样式、辅助类样式和CSS组件 -附源码

    导航 导航有一个不同,他不是写在container包含层里面了,而是那个div的上面! .navbar导航的基类,用于元素。....navbar-brand:设置品牌图标样式 .collapse是折叠导航的样式的基类。 .navbar-collapse是折叠导航样式。 .nav是导航的链接基类。....navbar-nav是导航的链接样式。 .navbar-from:导航表单,可以使表单元素排在同一行。 .navbar-left 或 .navbar-right :组件排列。....navbar-text:对于导航的普通文本有了行距和颜色,通常用于元素。 .navbar-fixed-top:导航固定在顶部,用于元素。...需要为设置padding-bottom:70px; .navbar-static-top:导航静止顶部,用于元素。会随着滚动条移动而消失。

    2.5K20

    深入理解bootstrap

    C.按钮组 1.只需要在多个按扭外部使用一个窗口元素(比如div),然后容器元素上应用 .btn-group样式即可 2.按扭工具多个分组外再放一个大的容器元素,然后容器元素上应用 .btn-toolbar...,需要配合js使用 3..alert样式上应用一个.alert-dismissable样式即可实现一个可关闭的警告框 4.警告框也有多种颜色样式 5.使用.alert-link样式高亮警告框中的链接...用法:$('#id').modal() 4.支持四种事件订阅:show.bs.modal、shown.bs.modal、hide.bs.modal、hidden.bs.modal C.下拉菜单 1.一般导航条...(navbar)和选项卡(tab)上实现 2.首先navbar的父容器上要应用.navbar样式,其次顶级ul块上要应用.nav和.navbar-nav样式 3.使用规则: 菜单样式和菜单项保持一致 被单击的链接或者按扭上需要应用...菜单容器内,必须有.nav样式的元素,并且在其内部有li元素,li内鈊的a元素才是可以侦测高亮的菜单链接,即符合.nav li > a这种选择符条件 3.js用法:$('滚动侦测容器选择符').scrollspy

    3.4K60

    前端|Bootstrap——导航组件

    通常都是利用列表实现来导航的,常用的是无序列表()和有序列表()。自定义列表()一般不会用来实现导航。 常见的导航菜单有标签式的导航菜单,胶囊式的导航菜单等等。...导航菜单的样式多种多样,其各式软件中的应用也是不可或缺的。今天就来简单制作一个导航菜单。效果如下: ?...图1.1 效果图 问题描述 如何制作导航菜单 首先要引入jquery.jsbootstrap.min.jsbootstrap.min.css文件。...图2.1 效果图 (2)页面可跳转的菜单 常见的导航菜单是一定可以实现页面切换的。这里就可以利用a标签。实现标签切换只需要在a标签上添加自定义属性data-toggle=“tab”。...当添加 data-toggle="dropdown" 属性,就可以让下拉菜单默认隐藏,只有点击按钮或链接,它才显示出来。 此外,这里的下拉菜单,还使用了使用来指示按钮作为下拉菜单

    6.6K10

    Web前端开发初级中级实操

    首页(index.html)使用Bootstrap响应式布局,PC端和移动端能够自适应显示,内容分为三部分: 一是【页头】,包括网页标题和导航,网页标题“Web技术社区”使用盒模型,导航使用了下拉插件...,显示菜单移动端显示为折叠导航; 二是【网站介绍】,背景从上到下由黑到白渐变,鼠标悬停“欢迎来到Web技术社区”标题字号变大为根元素大小的2.25倍; 三是【技术介绍】,采用栅格系统布局,以图片和标题的形式展示四项...【效果图】 (1)index.html PC 端效果 2)导航Bootstrap” 项使用下拉插件,点击显示下拉菜单,内容为 “布局”、“组件”、“插件” (3)index.html 移动端效果如图...1-3 所示,导航和 “Bootstrap下拉插件 3....-- 折叠导航 --> <button class="***<em>navbar</em>-<em>toggler</em>***" type="button" data-toggle="collapse" data-target

    7.3K20

    Bootstrap响应式前端框架笔记十——导航相关组件

    Bootstrap响应式前端框架笔记十——导航相关组件     Bootstrap中提供的导航分为两种模式,使用nav-tabs类可以创建页卡模式的导航,使用nav-pills类可以创建胶囊模式的导航...导航中也可以进行下拉菜单的嵌套,示例如下: 导航中嵌套下拉菜单 主页 <a...除了默认的导航组件,Bootstrap中还支持自定义导航条,使用navbar类可以创建导航条容器,其内可以布局图标,文本,按钮和表单等,示例如下: 自定义导航条 <nav class...使用navbar-fixed-top类或者navbar-fixed-bottom类可以将导航条固定在顶部或底部,示例如下: 将导航固定在顶部 提示 导航文本 将导航固定在底部

    2.3K20

    【Java 进阶篇】手把手教你创建 Bootstrap 旅游网站

    易用性:Bootstrap 提供了丰富的预定义组件和样式,使您能够快速创建页面元素,无需深入了解HTML、CSS和JavaScript。...我们将创建一个包含导航、轮播图、特色目的地、旅游套餐和联系表单的页面。 导航 导航是网站的重要部分,它使用户可以轻松导航到不同的页面。...以下是一个简单的导航示例: ...导航还包含一个响应式切换按钮,当屏幕尺寸较小时,它将显示为三条横线,允许用户切换导航。这里我们使用了Bootstrap提供的导航组件。 轮播图 轮播图是展示网站精彩内容的好方法。...以下是一个示例: /* 修改导航背景颜色和文字颜色 */ .navbar { background-color: #007BFF; } .navbar a {

    26050
    领券