滚动监听 伴随着滚动条的滚动,列表项被不断切换激活
<!-- 为data-target="#menu" 的监听对象--> <!-- navbar navbar-inner nav navbar-fixed-top 固定导航条 --> <div> <div> <div> <li><a href="#1">列表1</a></li> <li><a href="#2">列表2</a></li> <!-- dropdown dropdown-menu 下拉菜单 --> <li> <!-- data-toggle="dropdown" 调用下拉行为 --> <a href="#" data-toggle="dropdown">下拉菜单<b></b></a> <ul> <li><a href="#3">列表3</a></li> <li><a href="#4">列表4</a></li> <li><a href="#5">列表5</a></li> </ul> </li> </div> </div> </div> <!-- data-spy="scroll"为监听对象设置data属性 --> <!-- data-target="#menu"设置监听对象 --> <!-- data-offset="30"设置偏移量 --> <div data-spy="scroll" data-target="#menu" data-offset="30"> <h3>列表1</h3> <p><img src="https://www.jb51.net/img/1.jpg"></p> <h3>列表2</h3> <p><img src="https://www.jb51.net/img/2.jpg"></p> <h3>列表3</h3> <p><img src="https://www.jb51.net/img/3.jpg"></p> <h3>列表4</h3> <p><img src="https://www.jb51.net/img/4.jpg"></p> <h3>列表5</h3> <p><img src="https://www.jb51.net/img/5.jpg"></p> </div>
滚动监听
<body data-spy="scroll" data-target="#navbar" data-offset="0"> <div> <ul> <li><a href="#1">列表1</a></li> <li><a href="#2">列表2</a></li> <li> <a href="#" data-toggle="dropdown">下拉菜单 <b></b></a> <ul> <li><a href="#3">列表3</a></li> <li><a href="#4">列表4</a></li> <li><a href="#5">列表5</a></li> </ul> </li> </ul> </div> <!-- data-spy="scroll"为监听对象设置data属性 --> <!-- data-target="#menu"设置监听对象 --> <!-- data-offset="30"设置偏移量 --> <div > <h3>列表1</h3> <p><img src="https://www.jb51.net/img/1.jpg"></p> <h3>列表2</h3> <p><img src="https://www.jb51.net/img/2.jpg"></p> <h3>列表3</h3> <p><img src="https://www.jb51.net/img/3.jpg"></p> <h3>列表4</h3> <p><img src="https://www.jb51.net/img/4.jpg"></p> <h3>列表5</h3> <p><img src="https://www.jb51.net/img/5.jpg"></p> </div>
CSS样式
#navbar { position: fixed; right: 10px; top: 50px; width: 200px; background-color: #fff; }
调用:
第一种 :使用 data-spy=”scroll”方法,上述就是
第二种 :使用JS调用
HTML仅仅去掉data-spy=”scroll”
$(function () { $("body").scrollspy(); // 当一个新导航条的项目被激活时触发 $("body").on("activate", function (e) { if (e.target && $(e.target).hasClass("dropdown")){ $(e.target).children("ul.dropdown-menu").css("display", "block"); } else { $(e.target).parent().find("ul.dropdown-menu").css("display", "none"); } }) });
如果大家还想深入学习,可以点击这里进行学习,再为大家附一个精彩的专题:Bootstrap学习教程