学习 | jQuery全屏滚动插件FullPage.js
简介
fullPage.js是一个基于jQuery的全屏滚动插件,它能够很方便、很轻松的制作出全屏网站。
主要功能
- 支持鼠标滚动
- 支持前进后退和键盘控制
- 多个回调函数
- 支持手机、平板触摸事件
- 支持 CSS3 动画
- 支持窗口缩放
- 窗口缩放时自动调整
- 可设置滚动宽度、背景颜色、滚动速度、循环选项、回调、文本对齐方式
兼容性
fullPage.js 支持 IE8+ 及其他现代浏览器。测试代码
测试代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fullPage.js/2.9.2/jquery.fullPage.css">
<style>
#myMenu{
width: 900px;
display: block;
position: fixed;
top: 20px;
z-index: 999;
}
#myMenu li{
float: left;
list-style: none;
margin-left: 20px;
text-align: center;
}
#myMenu a {
font-size: 24px;
color: red;
}
#fullpage .section{
font-size: 24px;
color: red;
}
.section:nth-child(3) div{
width: 200px;
margin:0 auto;
}
.btn{
position: fixed;
top: 100px;
z-index: 999;
}
</style>
</head>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="./jquery-ui.min.js"></script>
<script src="./jquery.fullPage.js"></script>
<script>
$(document).ready(function(){
$('#fullpage').fullpage({
// 决定是否使用控制箭头向左向右移动幻灯片
controlArrows:true,
// 是否垂直居中网页中的内容
verticalCentered:true,
// 是否在窗口改变大小后,自动调整网页中字体的大小
resize:true,
// 每个屏幕滚动动画执行的时间
scrollingSpeed:700,
// 确定是否使用JavaScript和CSS3转换滚动在切片和幻灯片,如果为true则css3无效
css3:true,
// 定义在滚动屏幕中使用css3:true设置的过度效果,比如赛贝尔曲线
easingcss3:'ease',
// 定义每个section的CSS背景演示
sectionsColor: ['#254875', '#00FF00', '#254587', '#695684'],
// 定义导航的锚文本信息例如(#page1)
anchors: ['page1', 'page2', 'page3', 'page4'],
// 确定是否在URL中的锚点将在插件有任何影响
lockAnchors:false,
// 定义了用于垂直和水平滚动的过渡效果
easing:'easeInOutCubic',
// 定义屏幕滚动到第一个后,是否循序滚动到最后一个
loopTop:false,
// 定义屏幕滚动到最后一个后,是否循环滚动到第一个。
loopBottom:false,
// 定义水平的幻灯片是否循环切换
loopHorizontal:true,
// 义屏幕是否自动滚动,还是需要用户触发事件滚动
autoScrolling:true,
// 设置是否自适应整个窗口的空间,当为true时section将填充到整个页面,否者用户可以停留在网页的任何位置。
fitToSection:true,
// 定义是否使用浏览器默认的滚动条
scrollBar:false,
// 定义是否使用浏览器默认的滚动条
paddingTop:'10px',
// 显示一个小圆圈组成的快速导航栏
navigation: true,
// 结合参数navigation一起使用,用于设置navigation定义的菜单显示的位置,可以设置为left/right。
navigationPosition: 'right',
// 鼠标移动到快速导航上面的提示文本
navigationTooltips: ['fullPage.js', 'Powerful', 'Amazing', 'Simple'],
menu:'#myMenu',
// 回调函数
// 1.滚动到某一屏后
afterLoad:function(link,index){
var currentSection =$(this);
if(index===3){
console.log(currentSection);
console.log('is 3 section');
}
if(link==='page2'){
console.log('is 2 section')
}
},
// 滚动前
// index 是离开的“页面”的序号,从1开始计算;
// nextIndex 是滚动到的“页面”的序号,从1开始计算;
// direction 判断往上滚动还是往下滚动,值是 up 或 down。
onLeave:function(index,nextIndex,direction){
var currentSection = $(this);
// 离开第二个到了第三个
if(index==2){
console.log(currentSection);
console.log(nextIndex);
console.log(direction);
console.log('到了第三个,上一个是第二个');
}
if(nextIndex==3){
// return false 取消自动滚动
console.log(1111);
return false;
}
// 不常用的
// afterRender()
// 页面结构生成后的回调函数,或者说是页面初始化完成后的回调函数
// afterResize()
// 浏览器窗口尺寸改变后的回调函数
// afterSlideLoad(anchorLink,index,slideAnchor,slideIndex)
// 滚动到某一幻灯片后的回调函数,与afterLoad类似
// onSlideLeave(anchorLink,index,slideIndex,direction,nextSlideIndex)
// 在我们离开一个slide时,会触发一次此回调函数,与onLeave类似
}
})
// 方法函数
$('.btn').bind('click',function(){
// 设置section向上滚动
$.fn.fullpage.moveSectionUp();
// 设置section向下滚动
// $.fn.fullpage.moveSectionDown();
// 指定section index从0开始
// $.fn.fullpage.moveTo(3);
// 定义每个section/slide滚动的时间
// $.fn.fullpage.setScrollingSpeed(700);
// 设置幻灯片向右滑动
// $.fn.fullpage.moveSlideRight();
// 设置幻灯片向左滑动
// $.fn.fullpage.moveSlideLeft();
})
}) </script>
<body>
<ul id="myMenu">
<li data-menuanchor="page1" class="active"><a href="#page1">First section</a></li>
<li data-menuanchor="page2"><a href="#page2">Second section</a></li>
<li data-menuanchor="page3"><a href="#page3">Third section</a></li>
<li data-menuanchor="page4"><a href="#page4">Fourth section</a></li>
</ul>
<input type="button" style="color:#000;font-size:24px;" value=点击 class="btn">
<div id="fullpage">
<div class="section">第一屏</div>
<div class="section">第二屏</div>
<div class="section">
<div class="slide">第三屏第一屏</div>
<div class="slide">第三屏第二屏</div>
<div class="slide">第四屏第三屏</div>
<div class="slide">第五屏第四屏</div>
</div>
<div class="section">第四屏</div>
</div>
</body> </html>
学习 | jQuery全屏滚动插件FullPage.js的更多相关文章
- jQuery全屏滚动插件fullPage.js中文帮助文档API
jQuery全屏滚动插件fullPage.js中文帮助文档API 发现了一个fullPage.js插件,于是百度了一下,还就是这个插件的作用,其实有很多网站都做了全屏滚动的特效,效果也很好看,今天 ...
- 拥抱单页网站! jQuery全屏滚动插件fullPage.js
不知道从什么时候开始,单页网站就悄悄走进人们的视线,尤其是国外的网站,更是钟爱单页网站.制作一个全屏滚动的效果,然后每个滚动页弄一个好看的背景色,配上一些描述性的文字,大家都喜欢这么弄,仿佛逼格瞬间可 ...
- jQuery全屏滚动插件fullPage.js使用中遇到的问题(滑动轮播效果无效)
1.fullPage.js是什么? fullPage.js 是一个基于 jQuery ,用来制作全屏网站的插件. 2.兼容性: - jquery兼容:兼容 jQuery 1.7+ - 浏览器兼容: I ...
- 仿小米网jQuery全屏滚动插件fullPage.js
演 示 下 载 简介 如今我们经常能见到全屏网站,尤其是国外网站.这些网站用几幅很大的图片或色块做背景,再添加一些简单的内容,显得格外的高端大气上档次.比如 iPhone 5C 的介绍页面,QQ浏 ...
- 【转载】jQuery全屏滚动插件fullPage.js
文章转载自dowebok http://www.dowebok.com/ 原文链接:http://www.dowebok.com/77.html 简介 如今我们经常能见到全屏网站,尤其是国外网站.这些 ...
- jQuery 全屏滚动插件 fullPage.js 参数说明
fullPage.js 是一个基于 jQuery 的插件,它能够很方便.很轻松的制作出全屏网站,主要功能有: 支持鼠标滚动 支持前进后退和键盘控制 多个回调函数 支持手机.平板触摸事件 支持 CSS3 ...
- jQuery全屏滚动插件fullPage.js
github https://github.com/alvarotrigo/fullPage.js demo http://alvarotrigo.com/fullPage/ 脚手架 <link ...
- jQuery全屏滚动插件fullPage使用
1. 引入jquery.js和jquery.fullPage.min.js <script src="jquery.min.js"></script> &l ...
- 制作手机相册 全屏滚动插件fullpage.js
今天是端午自己做了一个小的送祝福链接 这里用到了fullpage插件 $('#container').fullpage({ navigation: false, //navigatio ...
随机推荐
- 为 Eureka 添加 Http Basic 认证
简介 在网络世界中,任何网络中的服务都是不安全的,为了使我们的 Eureka 服务更加安全,我们可以添加各种各样的认证方式,以使客户端在提供相应的证明之后才能够注册到 Eureka 中.而这次我们就添 ...
- 如何解决Mybatis 日期查询时后面带.0
关于如何解决Mybatis 日期查询时后面带.0 MySQL数据库: 直接在MySQL查询语句中解决: SELECT T.ID, T.USERNAME, DATE_FORMAT(t.birthda ...
- 【NOI2005】瑰丽华尔兹 - DP
题目描述 你跳过华尔兹吗?当音乐响起,当你随着旋律滑动舞步,是不是有一种漫步仙境的惬意? 众所周知,跳华尔兹时,最重要的是有好的音乐.但是很少有几个人知道,世界上最伟大的钢琴家一生都漂泊在大海上,他的 ...
- 痞子衡嵌入式:利用i.MXRT1060,1010上新增的FlexSPI地址重映射(Remap)功能可安全OTA
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT部分型号上新增的FlexSPI Remap功能. OTA升级设计几乎是每个量产客户都绕不开的话题,产品发布后免不了要做固件( ...
- IOS 如何持久化自定义对象 2014-08-01 01:38
如果持久话自定义对象 那么这个对象一定要遵循 NSCoding 协议 并实现编解码:然后再将编解码后的数据 NSKeyedArchiver 到NSData中 @interface NSKeyAnd ...
- Linux 实现密钥免密登录
Linux 实现密钥免密登录 环境:CentOS 7 一. 创建密钥 登录Linux,进入/root/.ssh/目录下 执行ssh-keygen -t rsa创建密钥一直回车即可,因为是免密所以直接回 ...
- 利用哈希map快速判断两个数组的交集
在大多数情况,也就是一般的情况下,大家都能想出最暴力的解法,通常也就是采用遍历或者枚举的办法来解决问题. 该题需要找出两个数组的交集,最简单的一个办法就是用A数组里面的所有数去匹配B数组里面的数.假设 ...
- linux命令--大小写转换命令
1.tr命令 tr命令转换小写为大写 cat aa.txt | tr a-z A-Z 或者 cat aa.txt | tr [:lower:] [:upper:] tr命令大写转换小写 ...
- JavaScript学习系列博客_2_JavaScript编写位置
JavaScript代码一般编写在哪里呢? 看到这个问题,第一个反应就是,JavaScript那当然是编写在<Script></Script>这对标签中啊!然而! 1.可以编写 ...
- govendor 使用
govendor是go语言依赖管理工具,推荐使用 https://github.com/kardianos/govendor 这个版本. go get -u -v github.com/kardian ...