基于jQuery的酷炫多功能全屏滚动插件fullPage.js

基于jQuery的酷炫多功能全屏滚动插件fullPage.js
基于 jQuery滚动插件fullPage.js ,它能够很方便、使用它可以很轻松的制作全屏网站。它不仅支持鼠标滚动,还支持前进后退和键盘控制,多个回调函数,支持手机、平板触摸事件,支持 CSS3 动画,支持窗口缩放,窗口缩放时自动调整,可设置滚动宽度、背景颜色、滚动速度、循环选项、回调、文本对齐方式等等。

入门指南

使用方法

第一步、引入依赖库(CSS,JS)

<!-- 引入fullpage关联的样式文件 -->
<link rel="stylesheet" href="css/jquery.fullPage.css">
<!-- 由于fullpage.js是基于jQuery,所以要首先引入jQuery库,必选库 -->
<script src="js/jquery.min.js"></script>
<!-- jquery.easings.min.js 用于 easing 参数,官网使用的是jQuery UI 库,可选 -->
<script src="js/jquery.easings.min.js"></script>
<!-- 如果 scrollOverflow 设置为 true,则需要引入 jquery.slimscroll.min.js,可选 -->
<script src="js/jquery.slimscroll.min.js"></script>
<!-- fullpage.js库,核心库,必选项 -->
<script src="js/jquery.fullPage.js"></script>

第二步、HTML标签设置

<div id="fullpageWrapper">
    <div class="section">
        <h3>我是第一屏</h3>
    </div>
    <div class="section">
        <h3>我是第二屏</h3>
    </div>
    <div class="section">
        <h3>我是第三屏</h3>
    </div>
    ......
    <div class="section">
        <h3>我是第n屏</h3>
    </div>
</div>

每个 section 代表一屏,默认显示第一个section区域,也就是本示例的“我是第一屏”,如果要指定加载时默认显示“第几屏”,可以在对应的 section 加上 class=”active”,如:

<div class="section active">我是第三屏</div>

同时,可以在 section 内加入 slide标签,实现内嵌屏幕如:

<div id="fullpageWrapper">
    <div class="section">我是第一屏</div>
    <div class="section">我是第二屏</div>
    <div class="section">
        <div class="slide">第三屏的内嵌第一屏</div>
        <div class="slide">第三屏的内嵌第二屏</div>
        <div class="slide">第三屏的内嵌第三屏</div>
    </div>
    ......
    <div class="section">
        <h3>我是第n屏</h3>
    </div>
</div>

第三步、JavaScript初始化

$(function(){
    $('#fullpageWrapper').fullpage();
});

完成

更多配置选项

选项

  • 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

方法

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

回调函数

  • 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个参数

更多选项请参考官方文档:https://github.com/alvarotrigo/fullPage.js/tree/master/lang/chinese#fullpagejs

the end