Fullpage.js固定导航栏-实现定位导航栏


Posted in Javascript onMarch 17, 2016

FullPage.js 是一个简单而易于使用的插件,用来创建全屏滚动网站(也被称为单页网站)。除了可以创建全屏滚动效果以外,也可以给网站添加一些水平的滑块效果。能够自适应不同的屏幕尺寸,包括平板电脑和移动设备。

开始制作自己的个人简历啦,决定要使用固定导航栏,又打算使用fullpage.js做全屏滚动。

仔细看了fullpage文档之后,发现不用额外写js代码就可以实现以下效果:

Fullpage.js固定导航栏-实现定位导航栏

1.当滚动翻页时,导航栏也自动定位到这一页的标签

2.当然点击标签时,也是滚动到那一页而不是直接跳转的。

一、准备工作肯定是要先导入fullpage.js啦;

官网是https://github.com/alvarotrigo/fullPage.js

<link rel="stylesheet" href="styles/jquery.fullPage.css">
<script src="scripts/jquery.min.js"></script>
<script src="scripts/jquery.fullPage.min.js"></script>

fullpage是基于jquery的,所以要记得导入jquery哦。

二、导航栏结构

<ul id="myMenu">
<li data-menuanchor="firstPage" class="menuList"><a href="#firstPage">首页</a></li>
<li data-menuanchor="secondPage"class="menuList"><a href="#secondPage">作品</a></li>
<li data-menuanchor="thirdPage" class="menuList"><a href="#thirdPage">技能</a></li>
<li data-menuanchor="fourthPage"class="menuList"><a href="#fourthPage">联系方式</a></li>
</ul>

上面导航栏的结构是这样的,其中的data-menuanchor就是fullpage要求的,a便签的href属性也要相对应的值咯。

三、滚动页的结构很简单,如下

<div id="fullpage">
<div class="section">1</div>
<div class="section">2</div>
<div class="section">3</div>
<div class="section">4</div>
</div>

四、要配置fullpage,js

$(document).ready(function() {
$('#fullpage').fullpage({
paddingTop: '50px',
anchors:['firstPage', 'secondPage', 'thirdPage','fourthPage'],
menu: '#myMenu'});
});

我的配置内容如图,第一条 paddingTop: '50px',是为了给固定导航栏腾出空间

第二条:anchors,这个是依次给滚动页设置锚点,注意这里需要和导航栏里的li标签的data-menuanchor属性以及a的href属性对应。

第三条:就是绑定菜单,也就是上面的导航栏。

更多配置项参考这里:https://github.com/Niefee/My-study-records/blob/master/2016/1/2016%E5%B9%B41%E6%9C%8818%E6%97%A5.markdown

五、增加active类的样式

这样,fullpage就配置好了,但是导航栏的样式还不能根据页面变化我们先查看一下控制台

Fullpage.js固定导航栏-实现定位导航栏

当页面滚动时,fullpage.js会给菜单里的对应项加入active类,这样就好办了我们加一条css样式,给active类改变背景色
.active{background-color: #609F98;}

这样,所有的效果就实现啦

PS:潜在的小bug,因为fullpage会在当前滚动页也加入active类,也就意味着这个css样式会影响该页的背景颜色(还好我用的背景图,不受影响,机智如我,哈哈),我猜想要解决的话,那可能要给section类加背景颜色,再加个!important吧。

好了,关于Fullpage.js固定导航栏-实现定位导航栏的相关内容就给大家介绍到这里,希望对大家有所帮助!

Javascript 相关文章推荐
Google的跟踪代码 动态加载js代码方法应用
Nov 12 Javascript
Jquery 实现checkbox全选方法
Jan 28 Javascript
jQuery Ajax 全局调用封装实例代码详解
Jun 02 Javascript
jQuery 获取页面li数组并删除不在数组中的key
Aug 02 Javascript
Angularjs中的页面访问权限怎么设置
Nov 11 Javascript
javascript中href和replace的比较(详解)
Nov 25 Javascript
详解Vue.js动态绑定class
Dec 20 Javascript
详解js的事件代理(委托)
Dec 22 Javascript
jQuery实现简单漂亮的Nav导航菜单效果
Mar 29 jQuery
微信小程序开发之toast等弹框提示使用教程
Jun 08 Javascript
extjs简介_动力节点Java学院整理
Jul 17 Javascript
使用js实现一个简单的滚动条过程解析
Sep 10 Javascript
基于socket.io+express实现多房间聊天
Mar 17 #Javascript
盘点javascript 正则表达式中 中括号的【坑】
Mar 16 #Javascript
教你用javascript实现随机标签云效果_附代码
Mar 16 #Javascript
浅析AMD CMD CommonJS规范--javascript模块化加载学习心得总结
Mar 16 #Javascript
js纯数字逐一停止显示效果的实现代码
Mar 16 #Javascript
神奇!js+CSS+DIV实现文字颜色渐变效果
Mar 16 #Javascript
js获取时间精确到秒(年月日)
Mar 16 #Javascript
You might like
php中的依赖注入实例详解
2019/08/14 PHP
javascript检查表单数据是否改变的方法
2013/07/30 Javascript
JavaScript Array对象扩展indexOf()方法
2014/05/09 Javascript
Javascript的setTimeout()使用闭包特性时需要注意的问题
2014/09/23 Javascript
js实现文本框支持加减运算的方法
2015/08/19 Javascript
AngularJs 60分钟入门基础教程
2016/04/03 Javascript
a标签跳转到指定div,jquery添加和移除class属性的实现方法
2016/10/10 Javascript
javascript实现简单的可随机变色网页计算器示例
2016/12/30 Javascript
关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法
2017/03/02 Javascript
微信小程序 数据遍历的实现
2017/04/05 Javascript
xmlplus组件设计系列之树(Tree)(9)
2017/05/02 Javascript
AngularJS中控制器函数的定义与使用方法示例
2017/10/10 Javascript
JavaScript解析机制与闭包原理实例详解
2019/03/08 Javascript
vue quill editor 使用富文本添加上传音频功能
2020/01/14 Javascript
Element Card 卡片的具体使用
2020/07/26 Javascript
python的id()函数解密过程
2012/12/25 Python
Python xlrd读取excel日期类型的2种方法
2015/04/28 Python
用python实现k近邻算法的示例代码
2018/09/06 Python
python list格式数据excel导出方法
2018/10/31 Python
Python自定义一个类实现字典dict功能的方法
2019/01/19 Python
python实现词法分析器
2019/01/31 Python
Django ORM 自定义 char 类型字段解析
2019/08/09 Python
python命名空间(namespace)简单介绍
2019/08/10 Python
Python 获取指定文件夹下的目录和文件的实现
2019/08/30 Python
numpy.ndarray 实现对特定行或列取值
2019/12/05 Python
Matplotlib使用字符串代替变量绘制散点图的方法
2020/02/17 Python
解决Django提交表单报错:CSRF token missing or incorrect的问题
2020/03/13 Python
Tensorflow中的降维函数tf.reduce_*使用总结
2020/04/20 Python
python实现自动清理重复文件
2020/08/24 Python
日本面向世界,国际级的免税在线购物商城:DOKODEMO
2017/02/01 全球购物
后勤自我鉴定
2013/10/13 职场文书
环保倡议书怎么写
2014/05/16 职场文书
学习三严三实心得体会
2014/10/13 职场文书
先进个人评语大全
2015/01/04 职场文书
JavaScript实现淘宝商品图切换效果
2021/04/29 Javascript
Java获取字符串编码格式实现思路
2022/09/23 Java/Android