jquery.fullpage 全屏滚动
参考文档 :http://www.dowebok.com/77.html
下载地址: https://github.com/alvarotrigo/fullPage.js
1. 使用
HTML
<div id="fullpage"> <div class="section">这是第一个页面</div> <div class="section"> <div class="slide">Slide 1</div> <div class="slide">Slide 2</div> <div class="slide">Slide 3</div> <div class="slide">Slide 4</div> </div> <div class="section">这是第三个页面</div> <!--active类定位到当前页面--> <div class="section">这是第四个页面</div> </div>
JS
<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>
2. 选项
选项 | 类型 | 默认值 | 解释 |
---|---|---|---|
verticalCentered | 字符串 | true | 内容是否垂直居中 |
resize | 布尔值 | false | 字体是否随着窗口缩放而缩放 |
sectionsColor | 数组 | 无 | 设置背景颜色 |
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 |
3. 方法
方法 | 解释 |
---|---|
moveSectionUp() | 向上滚动 |
moveSectionDown() | 向下滚动 |
moveTo(section, slide) | 滚动到 |
moveSlideRight() | slide 向右滚动 |
moveSlideLeft() | slide 向左滚动 |
setAutoScrolling() | 设置页面滚动方式,设置为 true 时自动滚动 |
setAllowScrolling() | 添加或删除鼠标滚轮/触控板控制 |
setKeyboardScrolling() | 添加或删除键盘方向键控制 |
setScrollingSpeed() | 定义以毫秒为单位的滚动速度 |
4. 回调函数
回调函数 | 解释 |
---|---|
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个参数 |