最新的Web开发教程
 

Bootstrap Scrollspy Plugin (Advanced)


该Scrollspy插件

该Scrollspy插件用于自动更新的基础上滚动位置的导航列表的链接。


如何创建一个Scrollspy

下面的例子演示如何创建一个scrollspy:

<!-- The scrollable area -->
<body data-spy="scroll" data-target=".navbar" data-offset="50">

<!-- The navbar - The <a> elements are used to jump to a section in the scrollable area -->
<nav class="navbar navbar-inverse navbar-fixed-top">
...
  <ul class="nav navbar-nav">
    <li><a href="#section1">Section 1</a></li>
    ...
</nav>

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

</body>
试一试»

例子解释:

添加data-spy="scroll" ,以应该使用的可滚动区域的元件(通常是这种<body>元素)。

然后添加data-target的ID值或导航栏(类名属性.navbar )。 这是为了确保该导航栏与滚动区相连。

需要注意的是滚动的元素必须导航栏的列表项中的链接(的ID匹配<div id="section1">匹配<a href="#section1"> )。

可选data-offset属性指定计算涡旋盘的位置时,从顶部偏移的像素的数量。 当你觉得导航栏里面的链接跳转到滚动元素时,过早地改变状态还是太早了,这非常有用。 默认为10像素。

需要相对定位:与元素data-spy="scroll"要求CSS position属性,值为"relative"正常工作。


Scrollspy垂直菜单

在这个例子中,我们使用引导的垂直导航药丸菜单:

<body data-spy="scroll" data-target="#myScrollspy" data-offset="20">

  <div class="container">
    <div class="row">
      <nav class="col-sm-3" id="myScrollspy">
        <ul class="nav nav-pills nav-stacked">
          <li><a href="#section1">Section 1</a></li>
          ...
        </ul>
      </nav>
      <div class="col-sm-9">
        <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>
试一试»

完成Bootstrap Scrollspy参考

对于所有scrollspy方法和事件的完整参考,请访问我们的引导JS Scrollspy参考