fullPage.js

fullPage.js是一个基于jQuery的全屏滚动插件,它能够很方便、很轻松的制作出全屏网站

 本章内容将详细介绍Android事件的具体处理及常见事件。

主要功能

  • 支持鼠标滚动
  • 支持前进后退和键盘控制
  • 多个回调函数
  • 支持手机、平板触摸事件
  • 支持 css3 动画
  • 支持窗口缩放
  • 窗口缩放时自动调整
  • 可设置滚动宽度、背景颜色、滚动速度、循环选项、回调、文本对齐方式等等

fullPage.js 支持 IE8+ 及其他现代浏览器

导入插件

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

HTML

<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>

JS

$(function(){
$('#fullpage').fullpage({
'verticalCentered': false,
'css3': true,
'sectionsColor': ['#254875', '#00FF00', '#254587', '#695684'],
anchors: ['page1', 'page2', 'page3', 'page4'],
'navigation': true,
'navigationPosition': 'right',
'navigationTooltips': ['fullPage.js', 'Powerful', 'Amazing', 'Simple']
})
})
/*组建好网页布局后,必须选中包裹所有 section 的  div 的  id,并调用 fullPage()方法,才能加载布局*/
/*调用 fullPage() 方法后,可以给函数传入对象类型的参数,设置fullPage 的各种属性*/
$('#fullPage').fullpage({
/*内容是否垂直居中,默认true*/
/*verticalCentered:true;*/ /*字体是否随窗口缩放,默认false*/
/*resize:true;*/ /*设置每一屏的背景色*/
/*sectionColor:["#FF0000","#00FF00","#0000FF"],*/ /*设置每一屏的锚点,可以直接跳转到该屏*/
anchors:["page1","page2","page3"], /*设置单页滚动速度,默认700毫秒*/
// scrollingSpeed:300, /*设置滚动动画方式
* JQuery 只支持几种动画特效,更多动画特效,
*/
// easing:"easeInQuart", /*绑定一个菜单 ,详见HTML
*/
// menu:"#menu", /*navigation 布尔值 false 是否显示项目导航小圆点
navigationPosition 字符串 right 项目导航的位置,可选 left 或 right
navigationColor 字符串 #000 项目导航的颜色
navigationTooltips 数组 空 项目导航的 tip 提示*/
navigation:true,
// navigationPosition:"left",
navigationTooltips:["第一页","第二页","第三页"], /*设置幻灯片的导航
* slidesNavigation 布尔值 false 是否显示左右滑块的项目导航
slidesNavPosition 字符串 bottom 左右滑块的项目导航的位置,可选 top 或 bottom*/
slidesNavigation:true, // controlArrowColor 字符串 #fff 左右滑块的箭头的背景颜色
controlArrowColor:"RGBA(0,0,0,0.3)", /*loopBottom 布尔值 false 滚动到最底部后是否滚回顶部
loopTop 布尔值 false 滚动到最顶部后是否滚底部
continuousVertical 布尔值 false 是否循环滚动,与 loopTop 及 loopBottom 不兼容 * autoScrolling 布尔值 true 是否使用插件的滚动方式,如果选择 false,则会出现浏览器自带的滚动条*/
continuousVertical:true, /*设置幻灯片是否水平循环,默认true
loopHorizontal 布尔值 true 左右滑块是否循环滑动*/
loopHorizontal:false, /*scrollOverflow 布尔值 false 内容超过满屏后是否显示滚动条*/ /*设置内容超出满屏区域后,是否显示滚动条,必须要导入scrolloverflow.js才能使用*/ /*css3 布尔值 false 是否使用 CSS3 transforms 滚动 * paddingTop 字符串 0 与顶部的距离
paddingBottom 字符串 0 与底部距离
*
*
* keyboardScrolling 布尔值 true 是否使用键盘方向键导航
* */ /*手持设备的触控灵敏度 数值越大越难翻页 100%屏幕高度*/
touchSensitivity:7,
/*浏览器直接大开指定锚点时是否滚动效果 animateAnchor 默认为true*/ /*回调函数
*
*
*
*
*
*
*
*
*
*
* afterLoad 滚动到某一屏后的回调函数,接收 anchorLink 和 index 两个参数
* ,anchorLink 是锚链接的名称,index 是序号,从1开始计算 滚动到某一屏后的回调函数
* ,接收 anchorLink 和 index 两个参数,anchorLink 是锚链接的名称,index 是当前页面序号,从1开始计算*/ afterLoad:function(anchorLink,index){
console.log(index) ;
console.log(anchorLink);
}, /*onLeave 滚动前的回调函数,接收 index、nextIndex 和 direction 3个参数:
* index 是离开的“页面”的序号,从1开始计算;
nextIndex 是滚动到的“页面”的序号,从1开始计算;
direction 判断往上滚动还是往下滚动,值是 up 或 down。*/ onLeave:function(index,nextIndex,direction){
console.log(index) ;
console.log(nextIndex) ;
console.log(direction) ;
}, /*afterRender 页面结构生成后的回调函数,或者说页面初始化完成后的回调函数,先执行第一个页面的afterload , 然后在执行afterrender
*/
afterRender:function(){
console.log("这是afterRender 页面初次加载 执行一次的回调函数") }, /*/* afterSlideLoad 滚动到某一水平滑块后的回调函数,与 afterLoad 类似,
接收 anchorLink、幻灯片所在的section的锚点
index、幻灯片所在的section的序号
slideIndex、 幻灯片自身的序号
slideAnchor , 幻灯片自身的锚点(如果没有显示slideindex) 4个参数 onSlideLeave 某一水平滑块滚动前的回调函数,与 onLeave 类似,
当幻灯片离开换到另一张幻灯片时,触发
接收 anchorLink、index、slideIndex、direction、nextSlideIndex 5个参数
anchorLink、幻灯片所在的section的锚点
index、幻灯片所在的section的序号
slideIndex、 幻灯片自身的序号
direction、幻灯片移动的方向,left和right
nextSlideIndex 、切换到的幻灯片的序号,从0开始
*/
}); });
选项 类型 默认值 说明
verticalCentered 字符串 true 内容是否垂直居中
resize 布尔值 false 字体是否随着窗口缩放而缩放
slidesColor 函数 设置背景颜色
anchors 数组 定义锚链接
scrollingSpeed 整数 700 滚动速度,单位为毫秒
easing 字符串 easeInQuart 滚动动画方式
menu 布尔值 false 绑定菜单,设定的相关属性与 anchors 的值对应后,菜单可以控制滚动
navigation 布尔值 false 是否显示项目导航
navigationPosition 字符串 right 项目导航的位置,可选 left 或 right
navigationColor 字符串 #000 项目导航的颜色
navigationTooltips 数组 项目导航的 tip
slidesNavigation 布尔值 false 是否显示左右滑块的项目导航
slidesNavPosition 字符串 bottom 左右滑块的项目导航的位置,可选 top 或 bottom
controlArrowColor 字符串 #fff 左右滑块的箭头的背景颜色
loopBottom 布尔值 false 滚动到最底部后是否滚回顶部
loopTop 布尔值 false 滚动到最顶部后是否滚底部
loopHorizontal 布尔值 true 左右滑块是否循环滑动
autoScrolling 布尔值 true 是否使用插件的滚动方式,如果选择 false,则会出现浏览器自带的滚动条
scrollOverflow 布尔值 false 内容超过满屏后是否显示滚动条
css3 布尔值 false 是否使用 CSS3 transforms 滚动
paddingTop 字符串 0 与顶部的距离
paddingBottom 字符串 0 与底部距离
fixedElements 字符串  
normalScrollElements    
keyboardScrolling 布尔值 true 是否使用键盘方向键导航
touchSensitivity 整数 5  
continuousVertical 布尔值 false 是否循环滚动,与 loopTop 及 loopBottom 不兼容
animateAnchor 布尔值 true  
normalScrollElementTouchThreshold 整数 5  

2、方法

名称 说明
moveSectionUp() 向上滚动
moveSectionDown() 向下滚动
moveTo(section, slide) 滚动到
moveSlideRight() slide 向右滚动
moveSlideLeft() slide 向左滚动
setAutoScrolling() 设置页面滚动方式,设置为 true 时自动滚动
setAllowScrolling() 添加或删除鼠标滚轮/触控板控制
setKeyboardScrolling() 添加或删除键盘方向键控制
setScrollingSpeed() 定义以毫秒为单位的滚动速度

3、回调函数

名称 说明
afterLoad 滚动到某一屏后的回调函数,接收 anchorLink 和 index 两个参数,anchorLink 是锚链接的名称,index 是序号,从1开始计算
onLeave 滚动前的回调函数,接收 index、nextIndex 和 direction 3个参数:
index 是离开的“页面”的序号,从1开始计算;
nextIndex 是滚动到的“页面”的序号,从1开始计算;
direction 判断往上滚动还是往下滚动,值是 up 或 down。
afterRender 页面结构生成后的回调函数,或者说页面初始化完成后的回调函数
afterSlideLoad 滚动到某一水平滑块后的回调函数,与 afterLoad 类似,接收 anchorLink、index、slideIndex、direction 4个参数
onSlideLeave 某一水平滑块滚动前的回调函数,与 onLeave 类似,接收 anchorLink、index、slideIndex、direction 4个参数

超级简单实用的前端必备技能-javascript-全屏滚动插件的更多相关文章

  1. zw版_Halcon图像交换、数据格式、以及超级简单实用的DIY全内存计算.TXT

    zw版_Halcon图像交换.数据格式.以及超级简单实用的DIY全内存计算.TXT Halcon由于效率和其他原因,内部图像采用了很多自有格式,提高运行速度,但在数据交换方面非常麻烦. 特别是基于co ...

  2. JavaScript全屏显示

    JavaScript全屏显示 需要引入的库 https://cdn.bootcss.com/jquery/1.9.0/jquery.min.js https://cdn.bootcss.com/scr ...

  3. JavaScript 全屏展示

    浏览器都有页面全屏的功能 F11 ,那么如何用JavaScript控制页面全屏呢?MDN上提供的的API , 一个小demo验证一下! <!DOCTYPE html> <html l ...

  4. javascript全屏操作

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 基于gulp编写的一个简单实用的前端开发环境好了,安装完Gulp后,接下来是你大展身手的时候了,在你自己的电脑上面随便哪个地方建一个目录,打开命令行,然后进入创建好的目录里面,开始撸代码,关于生成的json文件请点击这里https://docs.npmjs.com/files/package.json,打开的速度看你的网速了注意:以下是为了演示 ,我建的一个目录结构,你自己可以根据项目需求自己建目

    自从Node.js出现以来,基于其的前端开发的工具框架也越来越多了,从Grunt到Gulp再到现在很火的WebPack,所有的这些新的东西的出现都极大的解放了我们在前端领域的开发,作为一个在前端领域里 ...

  6. 基于gulp编写的一个简单实用的前端开发环境

    自从Node.js出现以来,基于其的前端开发的工具框架也越来越多了,从Grunt到Gulp再到现在很火的WebPack,所有的这些新的东西的出现都极大的解放了我们在前端领域的开发,作为一个在前端领域里 ...

  7. 前端必备技能之Photosh切图

    切图:即从设计稿里面切出网页素材 一.使用Photoshop工具 工具的使用: 1.将文字与标尺的单位的设置为像素 2.打开这五个窗口,关闭其它窗口,保存工作区方便以后使用 3.工作区弄乱时,可以使用 ...

  8. 使用jQuery创建可删除添加行的动态表格,超级简单实用的方法

    使用jQuery动态的添加和删除表格里面的行,不多说了直接上代码. <!DOCTYPE html> <html> <head> <meta charset=& ...

  9. 原生js实现简单的全屏滚动

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. Node.js原生及Express方法实现注册登录原理

    由于本文只是实现其原理,所以没有使用数据库,只是在js里面模拟数据库,当然是种中还是需要用数据库的. 1.node.js原生方法 ①html页面,非常简单,没有一丝美化~我们叫它user.html & ...

  2. C语言_第一讲_C语言入门

    一.C语言的简介 1.C语言是一个标准,而执行标准的时候产生的自动化程序则是编译器2.了解:1983年美国国家标准化歇会(ANSI)制定了C语言标准.C语言的特点:3.代码的可移植性(理想状态是代码可 ...

  3. UVa 10934 Dropping water balloons:dp(递推)

    题目链接:https://vjudge.net/problem/27377/origin 题意: 有一栋n层高的楼,并给你k个水球.在一定高度及以上将水球扔下,水球会摔破:在这个高度以下扔,水球不会摔 ...

  4. Python正则匹配

    使用Re模块 首先生成一个匹配模式pattern,如pattern='.test' 然后使用re.match(pattern,str)或者search()匹配调用 match跟search的区别: m ...

  5. Android自定义控件系列之应用篇——圆形进度条

    一.概述 在上一篇博文中,我们给大家介绍了Android自定义控件系列的基础篇.链接:http://www.cnblogs.com/jerehedu/p/4360066.html 这一篇博文中,我们将 ...

  6. 2017多校第9场 HDU 6170 Two strings DP

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6170 题意:给了2个字符串,其中第2个字符串包含.和*两种特别字符,问第二个字符串能否和第一个匹配. ...

  7. .NET平台微服务项目汇集

    最近博客园出现了一篇文章<微服务时代之2017年五军之战:Net PHP谁先死>,掀起了一波撕逼,作者只是从一个使用者的角度来指点江山,这个姿势是不对的..NET Core就是专门针对模块 ...

  8. 【VMware Workstation】虚拟机静态IP NAT连接外部网络(局域网以及广域网)

    使用虚拟机时,为了减少后期的网络维护工作,配置网络IP时使用了NAT连接.静态IP的方式.这里把我的配置步骤顺序罗列出来. 一.配置虚拟网络编辑器 1.在VMware 的编辑菜单选择虚拟网络编辑器 2 ...

  9. Yii2 关于yii\db\Connection::open耗时很久的问题(1000ms左右)

    关于这个问题我纠结了很久,每次打开网页yii\db\Connection::open几乎都耗时1000ms. 其实这个问题很好解决:只要把config\db.php配置信息里的localhost,改成 ...

  10. “无文件”恶意软件的威力:悄无声息一夜之间从ATM机中窃取80万美元

    去年雅虎接连曝出多个超大规模数据泄露事件,长期关注的你们一定都知道,5亿.10亿账户信息泄露的,除了雅虎也没谁了.就在这两天,5亿账户泄露的真相似乎正在浮出水面. 事件回顾 我们今天要讲的就是这桩5亿 ...