bootstrap之滚动监听

bootstrap之滚动监听

作者原创,未经允许,拒绝转载。

首先做一个导航,这个地方有一个 class="navbar-example" 是用来做绑定的

<div class="navbar-example">
    <!-- 导航 a中href="#one" 来寻找锚点-->
    <ul class="nav nav-tabs" role="tablist">
      <li role="presentation" class="active"><a href="#one">one</a></li>
      <li role="presentation"><a href="#two">two</a></li>
      <li role="presentation"><a href="#three">three</a></li>
    </ul>
</div>

然后做滚动监听空间,通过data-target=".navbar-example",找到导航并与之绑定,监听空间必须添加css position: relative;

<div data-spy="scroll" data-target=".navbar-example" style="position: relative;height: 300px;overflow: auto;">
  <h3 id ="one">one</h3>
  <p>oneoneoneoneone</p>
  <p>oneoneoneoneone</p>
  <p>oneoneoneoneone</p>
  <p>oneoneoneoneone</p>
  <p>oneoneoneoneone</p>
  <p>oneoneoneoneone</p>
  <p>oneoneoneoneone</p>
  <p>oneoneoneoneone</p>
  <p>oneoneoneoneone</p>
  <h3 id ="two">two</h3>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <p>twotwotwotwotwo</p>
  <h3 id ="three">three</h3>
  <p>threethreethree</p>
  <p>threethreethree</p>
  <p>threethreethree</p>
  <p>threethreethree</p>
  <p>threethreethree</p>
  <p>threethreethree</p>  
  <p>threethreethree</p>
  <p>threethreethree</p>
  <p>threethreethree</p>
  <p>threethreethree</p>
  <p>threethreethree</p>
</div>

data-spy="scroll":监听事件,滚动条
data-target=".navbar-example" 绑定的导航

总结:创建一个导航,设置一个标记class="navbar-example" ,与监听空间data-target=".navbar-example"进行绑定,让a找到里面的id,实现点击a跳到对应的id位置,其实就是锚点。添加监听滚动事件,当到达id的位置时,把class="active"转移到相应的a上,实现滚动到某一id,导航中相应的a发生改变。

博客已搬家 技术寇的分享

posted @ 2016-12-14 15:18  寇超  阅读(3999)  评论(0编辑  收藏  举报