很多时候我们在浏览一些网页的时候,导航条会根据我们浏览网页的进度而发生不同的变化,这种就是滚动监听。

你的顶栏导航,添加data-spy="scroll"到您想要刺探(最典型的是这将是该元素<body>)。然后添加data-target任何引导的父元素的ID或类属性.nav的组件。

我们来写一个基本的实例

先引入CSS文件

        <link href="bootstrap.min.css" rel="stylesheet">

我们需要在<body>中添加属性data-spy="scroll" data-target=".navbar" data-offset="70"来实现滚动监听

data-target=".navbar" :这是一个滚动条,依赖于导航条

    <body data-spy="scroll" data-target=".navbar" data-offset="70">
...
</body>

添加一个容器div,创建导航条

navbar-fixed-top属性使导航条一直处于浏览器顶部

<div class="container-fluid">:这是一个充满全屏的容器

navbar-default navbar-collapse:这是样式

id="myscrollspy":是用来索引的

<ul><li>用来做导航栏

        <div class="container">
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container-fluid">
<div class="collapse navbar-collapse js-navbar-scrollyspy" id="myscrollspy">
<ul class="nav navbar-nav">
<li><a href="#">@qwe</a></li>
<li><a href="#">@asd</a></li>
</ul>
</div>
</div>
</nav>
</div>

效果

在容器div中添加应该要跳转的内容

先写一个<hn>标签,在里面指定id,再添加内容

为方便,随便写点内容,然后把<a>中的href属性修改为“#qwe”和“#asd”(因为只在同一个页面内跳转,注意要用“#”来索引)

            <h2 id="qwe">@qwe</h2>
<p>qweeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeqhwduqhuwduqwg
asduiashduassssssssssssssssssssssssshdsuadusdkagsudguasgdukasgdukagsudgauskgd
asduiashduassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsasduiashduassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdukasgdukagsudgauskgd
asduiashduassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdukasgdukagsudgauskgduadusdkagsudguasgdukasgdukagsudgauskgdk</p>
<h2 id="asd">@asd</h2>
<p>qweeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeqhwduqhuwduqwg
asduiashduassssssssssssssssssssssssshdsuadusdkagsudguasgdukasgdukagsudgaus
asduiashduassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uasssssssssssssssssasduiashduassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdukasgdukagsudgauskgd
asduiashduassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdukasgdukagsudgauskgdsssssssshdsuadusdkagsudguasgdu
uassssssssssssssssssssssssshdsuadusdkagsudguasgdukasgdukagsudgauskgdkgdk</p>

然后我们来添加js代码

        <script src="jquery-3.1.0.min.js" type="text/javascript"></script>
<script src="bootstrap.min.js" type="text/javascript"></script>

实行查看效果

效果不明显,那是因为内容不够多,没有使浏览器产生上下的滚动条,需要添加新的内容

既然这样,顺便把下拉菜单也同时说了

在<ul>中添加新代码作为下拉菜单

                            <li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">下拉菜单<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li><a href="#one" tabindex="-1">one</a></li>
<li><a href="#two" tabindex="-1">two</a></li>
<li><a href="#three" tabindex="-1">three</a></li>
</ul>
</li>

效果

然后为其添加新的内容

(省略,使内容多到让浏览器产生上下的滚动条,同时也要仿照上面的,记得在<hn>标签中添加id索引)

注意红框内,

现在我们向下拉,注意红框内,@asd那里发生了变化

再继续往下,由于“one”是在下拉菜单中,现在“下拉菜单”发生了变化

同样,点击里面的标签,也会有跳转效果

Bootstrap入门(二十六)JS插件3:滚动监听的更多相关文章

  1. JavaWeb学习记录(二十六)——在线人数统计HttpSessionListener监听实现

    一.session销毁控制层代码 public class InvalidateSession extends HttpServlet { public void doGet(HttpServletR ...

  2. Bootstrap <基础二十六>进度条

    Bootstrap 进度条.在本教程中,你将看到如何使用 Bootstrap 创建加载.重定向或动作状态的进度条. Bootstrap 进度条使用 CSS3 过渡和动画来获得该效果.Internet ...

  3. Bootstrap入门(十六)组件10:well和具有响应式特性的嵌入内容

    Bootstrap入门(十六)组件10:well和具有响应式特性的嵌入内容 well组件可以为内容增添一种切入效果. 具有响应式特性的嵌入内容可以根据被嵌入内容的外部容器的宽度,自动创建一个固定的比例 ...

  4. 网站开发进阶(二十六)js刷新页面方法大全

    js刷新页面方法大全 在项目开发过程中,需要实现刷新页面.经过学习,发现下面这条语句就可以轻松实现. location.reload(); // 刷新页面 有关刷新页面的其它方法,具体学习内容如下,有 ...

  5. Bootstrap <基础二十八>列表组

    列表组.列表组件用于以列表形式呈现复杂的和自定义的内容.创建一个基本的列表组的步骤如下: 向元素 <ul> 添加 class .list-group. 向 <li> 添加 cl ...

  6. Bootstrap <基础二十九>面板(Panels)

    Bootstrap 面板(Panels).面板组件用于把 DOM 组件插入到一个盒子中.创建一个基本的面板,只需要向 <div> 元素添加 class .panel 和 class .pa ...

  7. Bootstrap <基础二十五>警告(Alerts)

    警告(Alerts)以及 Bootstrap 所提供的用于警告的 class.警告(Alerts)向用户提供了一种定义消息样式的方式.它们为典型的用户操作提供了上下文信息反馈. 您可以为警告框添加一个 ...

  8. Bootstrap<基础二十四> 缩略图

    Bootstrap 缩略图.大多数站点都需要在网格中布局图像.视频.文本等.Bootstrap 通过缩略图为此提供了一种简便的方式.使用 Bootstrap 创建缩略图的步骤如下: 在图像周围添加带有 ...

  9. Bootstrap <基础二十二>超大屏幕(Jumbotron)

    Bootstrap 支持的另一个特性,超大屏幕(Jumbotron).顾名思义该组件可以增加标题的大小,并为登陆页面内容添加更多的外边距(margin).使用超大屏幕(Jumbotron)的步骤如下: ...

  10. Bootstrap<基础二十> 标签

    Bootstrap 标签.标签可用于计数.提示或页面上其他的标记显示.使用 class .label 来显示标签,如下面的实例所示: <!DOCTYPE html> <html> ...

随机推荐

  1. php 命名空间的目的

    php引入命名空间的目的,就是为了防止不同的文件 标识符同名的问题,比如类.函数.变量同名导致冲突的问题.这才是根本的根本,了解指点,带着这个观念去学习php命名空间的相关知识,就不会云里雾里了,会比 ...

  2. Jquery 源码学习

    https://www.youtube.com/watch?v=qeMFEz_ufZc http://stackoverflow.com/questions/7194784/analysing-the ...

  3. ReactiveNative学习之Diff算法

    React 源码剖析系列 - 不可思议的 react diff深入浅出React(四):虚拟DOM Diff算法解析React diff 算法总结链接引用的文章React出于性能的考虑,为了避免频繁操 ...

  4. Docker Swarm集群

    Docker Swarm集群 IP 10.6.17.11  管理节点 IP 10.6.17.12   节点A IP 10.6.17.13   节点B IP 10.6.17.14   节点C 安装 Sw ...

  5. Javascript Fromdata 与jQuery 实现Ajax文件上传

    <!DOCTYPE html> <html> <head> <title>ajax</title> <script type=&quo ...

  6. MYSQL管理----数据库删除恢复

    (1) 如果备份了,就好解决了.略. (2)如果日志打开,使用mysqlbinlog来恢复. mysqlbinlog工具的使用,大家可以看MySQL的帮助手册.里面有详细的用, 在这个例子中,重点是- ...

  7. Sematic库系列一

    最近在做项目时采用了sematic css 库,由于这个库的资料太少,在做项目中遇到很多问题,在这里做一些记录 1. 下拉框demo HTML 代码 <div class="field ...

  8. js arguments.callee & caller的用法及区别

    在函数内部,arguments.callee该属性是一个指针,指向拥有这个arguments对象的函数; 而函数对象的另一个属性:caller,这个属性保存着调用当前函数的函数的引用,如果是在全局作用 ...

  9. 交换Ctrl和Caps Lock键

    由于使用vim的缘故,就把Ctrl和Caps Lock键交换了,在ubuntu系统下使用系统设置可以很简单地进行全局替换. 在ubuntu下习惯了之后在window下就经常按错...后来决定也把win ...

  10. 用C#开发一个 UWP BLUETOOTH BLE 扫描APP

    什么是WINDOWS UWP UWP即Windows 10 中的Universal Windows Platform简称.即Windows通用应用平台,在Win 10 Mobile/Surface(W ...