如今我们经常能见到全屏网站,尤其是国外网站。这些网站用几幅很大的图片或色块做背景,再添加一些简单的内容,显得格外的高端大气上档次。比如 iPhone 5C 的介绍页面(查看),QQ浏览器的官网站。如果你也希望你的网站能设计成全屏的,显得更上档次,你可以试试 fullPage.js

主要功能有:

支持鼠标滚动

支持前进后退和键盘控制

多个回调函数

支持手机、平板触摸事件

支持 CSS3 动画

支持窗口缩放

窗口缩放时自动调整

可设置滚动宽度、背景颜色、滚动速度、循环选项、回调、文本对齐方式等等

实例代码展示

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="renderer" content="webkit">
<title>fullpage</title>
<meta name="description" content="">
<meta name="keywords" content="">
<meta name="author" content="Jesse">
<link href="https://cdnjs.cloudflare.com/ajax/libs/fullPage.js/2.7.4/jquery.fullPage.css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fullPage.js/2.7.4/jquery.fullPage.js"></script>
</head> <body>
<!-- <ul id="fullpageMenu" style="position:fixed;top:100px;right:20px;z-index:999;">
<li data-menuanchor="page1" class="active"><a href="#page1">1</a></li>
<li data-menuanchor="page2" ><a href="#page2">2</a></li>
<li data-menuanchor="page3"><a href="#page3">3</a></li>
<li data-menuanchor="page4" ><a href="#page4">4</a></li>
<li data-menuanchor="page5" ><a href="#page5">5</a></li>
</ul> -->
<div id="header" style="position:fixed;top:20px;right:20px;font-size: 30px;color:#fff;">123</div>
<div id="fullpage">
<div class="section">section1</div>
<div class="section">section2</div>
<div class="section">
<div class="slide"> Slide 1 </div>
<div class="slide"> Slide 2 </div>
<div class="slide active"> Slide 3 </div>
<div class="slide"> Slide 4 </div>
</div>
<div class="section">section4</div>
<div class="section">section5</div>
</div>
<script>
$(document).ready(function() {
$('#fullpage').fullpage({
//配置项介绍 //sectionsColor为每个section设置background-color属性
sectionsColor:['green','orange','gray','red','yellow'],
//controlArrows定义是否通过箭头来控制slide,默认true
controlArrows:false,
//verticalCentered定义每一页的内容是否垂直居中,默认true
verticalCentered:false,
//resize字体是否随窗口缩放而缩放,默认false
resize:true,
//scrollingSpeed设置滚动速度,单位毫秒,默认700
scrollingSpeed:1000,
//anchors定义锚链接,默认为[],定义锚链接时,值不要和页面中的任何ID或name相同,且不需要加#
anchors:['page1','page2','page3','page4','page5'],
//lockAnchors是否锁定锚链接,默认为false,设为true后链接地址不会改变
// lockAnchors:true,
//easing定义页面section滚动的动画方式,默认为easeInOutCubic,若修改此项需引入jquery.easing插件
//css3是否使用CSS3 transforms来实现滚动效果,默认为true。若浏览器不支持CSS3,则会用Jquery来实现
//css3:false,
//loopTop滚动到最顶部后是否连续滚动到底部,默认为false
//loopBottom滚动到最低部后是否连续滚动到顶部,默认为false
//loopHorizontal横向slide幻灯片是否循环滚动,默认为true
//autoScrolling是否使用插件的滚动方式,默认为true,若为false则会出现浏览器自带滚动条
//scrollBar是否包含滚动条,默认为false,若为true浏览器自带滚动条出现
//paddingTop/paddingBottom设置每一个section顶部和底部的padding,默认为0
//fixedElements固定元素,默认为null,需要配置一个jquery选择器,在页面滚动时,fixElements设置的元素不滚动
fixedElements:"#header",
//keyboardScrolling是否可以使用键盘方向键导航,默认为true
//touchSensitivity在移动设备中滑动页面的敏感性,默认为5最高100,越大越难滑动
//continousVertical是否循环滚动,默认为false,注意这个属性和loopTop loopBottom不兼容,不能同时设置
//animateAnchor锚链接是否可以控制滚动动画,默认为true,若为false则锚链接定位失效
//recordHistory是否记录历史,默认为true,通过浏览器的前进后退来导航。若设置autoScrolling:false,那么这个属性将被关闭
//menu绑定菜单,设定的相关属性与anchors的值对应后,菜单可以控制滚动条,默认为false。可设置为菜单的jquery选择器
//menu:"#fullpageMenu",
//navigation是否显示导航,默认为false
navigation:true,
//navigationPosition导航小圆点的位置
navigationPosition:"right",
//navigationTooltips导航小圆点的提示,注意按顺序设置
navigationTooltips:['page1','page2','page3','page4','page5'],
//showActiveTooltip是否显示当前页面的tooltip信息,默认为false
//slidesNavigation 是否显示横向幻灯片的导航,默认为false
slidesNavigation:true,
//slidesNavPosition横向导航的位置,默认为bottom,可以设置为top或bottom
slidesNavPositon:"top",
//scrollOverflow内容超过满屏后是否显示滚动条,默认为false,如果为true则会显示滚动条,若需滚动查看内容还需要jquery.slimscroll插件的配合
//sectionSelector:section选择器。默认为.section
//slideSelector:slide选择器,默认为.slide //方法介绍
//$.fn.fullpage.***()
//moveSectionUp()向上滚动一页
//moveSectionDown()向下滚动一页
//moveTo(section,slide)section从1开始,slide从0开始
//silentMoveTo(section,slide)和moveTo一样,但是没有滚动效果
//moveSlideRight()幻灯片向右滚动
//moveSlideLeft()幻灯片向左滚动
//setAutoScrolling(boolean):动态设置autoScrolling
//setLockAnchors(boolean):动态设置lockAnchors
//setRecordHistory(boolean):动态设置recordHistory
//setScrollingSpeed(milliseconds):动态设置scrollingSpeed
//destory(type)销毁fullpage,type可以不写或者使用all
//reBuild()重新更新页面和尺寸,用于ajax请求改变页面结构后重建效果
//lazyLoading
});
});
</script>
</body> </html>

使用方法

1、引入文件

<link rel="stylesheet" href="css/jquery.fullPage.css">
<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> <script src="js/jquery.fullPage.js"></script>

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

3、JavaScript

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

配置

1、选项

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

这款插件还在不断更新,想了解最新功能,推荐阅览官方文档

FullPage.js全屏滚动插件学习总结的更多相关文章

  1. jquery.fullPage.js全屏滚动插件教程演示

    css部分(此处需要导入jquery.fullPage.css) <style> .section { text-align: center; font: 50px "Micro ...

  2. fullpage.js全屏滚动插件使用方法

    在移动端经常会用到全屏滚动插件,实现常见H5活动页的效果,fullpage是一个很不错的jquery全屏滚动插件 fullpage.js插件的API:http://www.dowebok.com/77 ...

  3. fullpage.js全屏滚动插件使用小结

    刚做好公司网站,通过全屏滚动,显著提高了官网的浏览体验.遂总结一下使用fullpage.js的方法.欢迎指正 一. fullpage.js简介 fullpage.js是一套实现浏览器全屏滚动的js插件 ...

  4. FullPage.js全屏滚动插件的配置项、方法和回调函数

    fullPage.js 是一个基于 jQuery 的插件,它能够很方便.很轻松的制作出全屏网站,主要功能有: 支持鼠标滚动 支持前进后退和键盘控制 多个回调函数 支持手机.平板触摸事件 支持 CSS3 ...

  5. FullPage.js全屏滚动插件

    一.介绍 fullPage.js是一个基于jQuery的插件,他能够很方便.很轻松的制作出全屏网站,主要功能有: 1.支持鼠标滚动 2.多个回调函数 3.支持手机.平板触摸事件 4.支持CSS3动画 ...

  6. jquery.fullPage.js全屏滚动插件

    注:本文内容复制于http://www.51xuediannao.com/js/jquery/jquery.fullPage.html 和 http://www.360doc.com/content/ ...

  7. fullPage.js全屏滚动插件API

    API sectionsColor:['green','orange','red','lime']; //设置背景颜色 可以为每一个section设置background-color属性 contro ...

  8. FullPage.js全屏滚动插件解说

    1.主要功能 1).支持鼠标滚动 2).多个回调函数 3).支持手机.平板触屏事件 4).支持css3动画 5).支持窗口缩放 6).窗口缩放时自动调整 7).可设置滚动宽度.背景颜色.滚动速度.循环 ...

  9. jQuery fullPage.js 全屏滚动

    fullPage 是一款不依赖任何 js 库的全屏滚动组件,支持垂直/水平滚动.CSS3 旋转/缩放动画,支持 IE5.5+,支持移动设备. 在线实例 垂直滚动 水平滚动 CSS3 动画1 CSS3 ...

随机推荐

  1. spring mvc中的文件上传

    使用commons-fileupload上传文件所需要的架包有:commons-fileupload 和common-io两个架包支持,可以到Apache官网下砸. 在配置文件spring-mvc.x ...

  2. Windows Server 2003开机自动启动MySQL服务设置方法

    Windows Server 2003开机自动启动MySQL服务设置方法 发布时间:2014-12-19 更新时间:2014-12-24 来源:网络 作者:eaglezhong 关键词: 2003 e ...

  3. 学一点Git--20分钟git快速上手 [Neil]

    From: http://www.cnblogs.com/shuidao/p/3535299.html (图片已修复)在Git如日中天的今天,不懂git都不好意思跟人说自己是程序猿.你是不是早就跃跃欲 ...

  4. 第一个MySQL 存储过程

    昨天写了人生第一个mysql存储过程:遗憾的是,这个存储过程最后还是没用上,用php代码替代 话说mysql的存储过程真是反人类,不查reference,基本不能看懂那些语句:语言中能和它相比的,只有 ...

  5. Javascript中“==”与“===”的区别

    在Javascript中有"=="和"==="两种比较运行符,那么他们有什么区别呢? 一.对于string,number等基础类型,==和===是有区别的 1) ...

  6. [原创]使用benchmarksql和pgbench对PostgreSQL Plus Advanced Server进行性能测试

    一.测试环境 benchmarksql version:4.0.8 rhel 6.3 vmware esxi 二.理解benchmarksql性能测试原理TPC-C 1.理解TPC-C TPC-C模拟 ...

  7. hdu 1872 稳定排序

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1872 稳定排序 Description 大家都知道,快速排序是不稳定的排序方法.如果对于数组中出现的任 ...

  8. C#中的索引

    索引代码示例:                 索引的使用示例:                       索引在经过编译器编译之后就相当于一个属性,进一步的说就是两个方法.       一个类允许 ...

  9. PHP中使用CURL实现GET和POST请求

    转自:http://www.smsyun.com/home-index-page-id-284.html 一.什么是CURL? cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议, ...

  10. 无法加载一个或多个请求的类型。有关更多信息,请检索 LoaderExceptions 属性

    一解决方法: 问题的主要原因出在:跨程序集反射. 即我们需反射的A.dll的程序集引用B.dll程序集,而在反射工具项目中却不存在对B.dll程序集的引用.因此我们只需在反射工具项目中添加对B.dll ...