Bootstrap导航切换按钮(Toggler)失效问题求助
解决Bootstrap导航切换按钮(Toggler)无法展开的问题
我帮你排查了代码里的几个关键问题,这些都是导致切换按钮点击无反应的核心原因,一个个来修正:
1. 脚本加载顺序错误
Bootstrap的JavaScript依赖jQuery和Popper.js,必须按照 jQuery → Popper.js → Bootstrap JS 的顺序加载——你现在把Bootstrap JS放在了Popper前面,导致依赖缺失,切换功能根本无法正常初始化。
2. 导航按钮的属性拼写错误
按钮上的几个核心属性写错了,Bootstrap完全识别不了:
data-toggler="collapse"→ 改为data-toggle="collapse"(Bootstrap触发折叠的标准属性是data-toggle)aria-expanded="flase"→ 改为aria-expanded="false"(拼写错误,flase应该是false)aria-lable="Toggle navigation"→ 改为aria-label="Toggle navigation"(属性名少了一个'l')
3. 中文引号导致容器失效
你的容器标签用了中文引号:class=鈥漜ontainer鈥�,要改成英文双引号class="container",否则Bootstrap的容器样式和布局逻辑都会失效。
4. 其他可优化的细节错误(不影响切换,但建议修正)
- 搜索按钮的
btn-outline-sucess→ 改为btn-outline-success(拼写错误) - 分页项的
pagination-item→ 改为page-item(Bootstrap官方的分页类名) - 分页链接的
Class="page-link"→ 改为class="page-link"(HTML属性名必须小写)
修正后的完整代码
<!DOCTYPE html> <html> <head> <meta name = "viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="Content-Type" content="text/html;"> <title>HTML Test</title> <!-- 正确的脚本加载顺序:jQuery → Popper → Bootstrap JS --> <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" type="text/javascript"></script> <script src="Bootstrap/js/bootstrap.min.js" type="text/javascript"></script> <!-- CSS放在head里更符合规范 --> <link href="Bootstrap/css/bootstrap.min.css" rel="stylesheet"> </head> <body> <!-- Container --> <div class="container"> <!-- Navigation --> <nav class="navbar sticky-top navbar-expand-lg navbar-dark bg-dark"> <a class="navbar-brand" href="#">Navigation Bar</a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <!-- links --> <div class="collapse navbar-collapse" id="navbarSupportContent"> <ul class="navbar-nav mr-auto"> <li class="nav-item"> <a class="nav-link" href="#">Home</a> </li> <li class="nav-item"> <a class="nav-link" href="#">About Us</a> </li> <!-- Drop down --> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" data-toggle="dropdown">More</a> <div class="dropdown-menu" role="menu"> <a class="dropdown-item" href="#">Link 1</a> <a class="dropdown-item" href="#">Link 2</a> <a class="dropdown-item" href="#">Link 3</a> <a class="dropdown-item" href="#">Link 4</a> </div> </li> <li class="nav-item"> <a class="nav-link" href="#">Logout</a> </li> </ul> </div> <!-- Search Button and text column --> <form class="form-inline my-2 my-lg-0"> <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search"> <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> </form> </nav> <!-- pagination --> <nav aria-label="pageNavigation"> <ul class="pagination justify-content-end"> <li class="page-item"><a class="page-link" href="#">Previous</a></li> <li class="page-item"><a class="page-link" href="#">1</a></li> <li class="page-item"><a class="page-link" href="#">2</a></li> <li class="page-item"><a class="page-link" href="#">3</a></li> <li class="page-item"><a class="page-link" href="#">Next</a></li> </ul> </nav> </div> </body> </html>
把这些修改完之后,你的导航切换按钮应该就能正常展开/收起了。
内容的提问来源于stack exchange,提问作者user3436422
相关产品推荐
相关产品推荐

