Bootstrap 5 Scrollspy
Scrollspy
Scrollspy 用于根据滚动位置自动更新导航列表中的链接。
如何创建 Scrollspy
以下示例演示了如何创建 scrollspy
示例
<!-- 可滚动区域 -->
<body data-bs-spy="scroll" data-bs-target=".navbar" data-bs-offset="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>
<!-- Section 1 -->
<div id="section1">
<h1>Section 1</h1>
<p>尝试滚动此页面,在滚动时查看导航栏!</p>
</div>
...
</body>
自己动手试一试 »
示例解释
将 data-bs-spy="scroll"
添加到应作为可滚动区域的元素上(通常是 <body>
元素)。
然后添加 data-bs-target
属性,其值为导航栏的 id 或类名(.navbar
)。这样可以确保导航栏与可滚动区域连接起来。
请注意,可滚动元素必须匹配导航栏列表项中链接的 ID(<div id="section1">
匹配 <a href="#section1">
)。
可选的 data-bs-offset
属性指定了在计算滚动到可滚动元素时的位置时,从顶部偏移的像素数。当您觉得导航栏中的链接在跳转到可滚动元素时,激活状态更改得太早或太晚时,这将很有用。默认值为 10 像素。
需要相对定位:具有 data-bs-spy="scroll" 的元素需要 CSS 的 position 属性,其值为 "relative",才能正常工作。