Bootstrap 4 自动更新导航插件

自动更新导航插件 ( Scrollspy )会根据滚动条的位置自动更新对应的导航目标

自动更新导航插件主要由两部分组成

滚动区域,以  来识别,且 css 属性 position 要设置为 "relative" 才能起作用
导航区域,以 .navbar 来识别

而滚动区域的 >.navbar ),用于将滚动区域和导航区域联系起来

如果需要点击导航的链接滚动到指定区域,则需要将滚动项元素上的 id (<div id="section1">) 匹配导航栏上的链接选项 ( <a href="#section1">)

如果要在初始化时就滚动到指定的区域,可以使用 >下面的范例演示了自动更新导航插件插件的主要代码

<!-- 可滚动区域 -->
<div >="scroll" >=".navbar" >="50">

<!-- 导航区域,实质上就是一个导航条 -->
<!--- <a> 标签可以用点击跳转到指定的章节 -->
<nav class="navbar navbar-expand-sm bg-dark navbar-dark fixed-top">
...
  <ul class="navbar-nav">
    <li><a href="#section1">Section 1</a></li>
    ...
</nav>

<!-- 第一部分内容 -->
<div id="section1">
  <h1>Section 1</h1>
  <p>Try to scroll this page and look at the navigation bar while scrolling!</p>
</div>
...
</div>


垂直滚动监听

<body >="scroll" >="#myScrollspy" >="1">

  <div class="container-fluid">
    <div class="row">
      <nav class="col-sm-3 col-4" id="myScrollspy">
        <ul class="nav nav-pills flex-column">
          <li class="nav-item">
            <a class="nav-link active" href="#section1">Section 1</a>
          </li>
          ...
        </ul>
      </nav>
      <div class="col-sm-9 col-8">
        <div id="section1"> 
          <h1>Section 1</h1>
          <p>Try to scroll this page and look at the navigation list while scrolling!</p>
        </div> 
        ...
      </div>
    </div>
  </div>

</body>

链接: https://fly63.com/course/19_974