下面是我学习这门课程后的测试代码:css
HTML部分:html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>fullpage使用</title> <link rel="stylesheet" href="css/jquery.fullPage.css"/> <script src="js/jquery-1.8.3.min.js"></script> <script src="js/jquery.fullPage.min.js"></script> <style> .menu { margin: 0; padding: 0; position: fixed; left: 10px; top: 10px; list-style-type: none; z-index: 70;} .menu li { float: left; margin: 0 10px 0 0; font-size: 14px;} .menu a { float: left; padding: 10px 20px; background-color: #fff; color: #333; text-decoration: none;} .menu .active a { color: #fff; background-color: #333;} body{ font-size:200%;} .section{text-align:center;overflow: hidden} .s4 p{ margin-left: -200%;transition:1s 0.7s; }/*使s4的p元素隐藏在界面的左边而且设置过渡 */ .s4.active p{margin-left: 0}/*使p元素从左边弹出*/ .s3 p{ margin-top: -200%;transition:1s 0.7s; }/*使s1的p元素隐藏在界面的下边而且设置过渡 */ .s3.active p{margin-top:0;}/*使p元素从下边弹出 </style> <script> $(function(){ $(".fullpage").fullpage({ sectionsColor: ['#1bbc9b', '#4BBFC3', '#7BAABE', '#f90'],//json形式 continuousVertical: true,//设置循环 anchors: ['page1', 'page2', 'page3', 'page4'],//设置锚 menu: '.menu',//定义上方MENU navigation: true,//设置右边导航栏 // navigationPosition:"left",//设置导航栏的位于左边仍是右边,默认为右边 navigationTooltips:['第一页','第二页','第三页','第四页'] }); // setInterval(function(){ // $.fn.fullpage.moveSectionDown(); // }, 3000);//设置页面自动往下 }); </script> </head> <body> <ul class="menu"> <li data-menuanchor="page1" class="active"><a href="#page1">第一页</a></li><!--设置data-menuanchor是为了兼容旧版本的浏览器--> <li data-menuanchor="page2"><a href="#page2">第二页</a></li> <li data-menuanchor="page3"><a href="#page3">第三页</a></li> <li data-menuanchor="page4"><a href="#page4">第四页</a></li> </ul> <div class="fullpage"> <div class="section s1"><h2>第一页</h2><p>这里有好多好多内容,我要用CSS3让从下边滑动出现</p></div> <div class="section s2"> <div class="slide"><h2>第二屏的第一屏</h2></div> <div class="slide"><h2>第二屏的第二屏</h2></div> <div class="slide"><h2>第二屏的第三屏</h2></div> </div> <div class="section s3"><h2>第三页</h2><p>这里有好多好多内容,我要</p></div> <div class="section s4"><h2>第四页</h2><p>这里有好多好多内容,我要用CSS3让他从左边滑动出现</p></div> </div> </body> </html>
CSS部分:jquery
/** * fullPage 2.4.6 * https://github.com/alvarotrigo/fullPage.js * MIT licensed * * Copyright (C) 2013 alvarotrigo.com - A project by Alvaro Trigo */ html, body { margin: 0; padding: 0; overflow:hidden; /*Avoid flicker on slides transitions for mobile phones #336 */ -webkit-tap-highlight-color: rgba(0,0,0,0); } #superContainer { height: 100%; position: relative; /* Touch detection for Windows 8 */ -ms-touch-action: none; /* IE 11 on Windows Phone 8.1*/ touch-action: none; } .fp-section { position: relative; -webkit-box-sizing: border-box; /* Safari<=5 Android<=3 */ -moz-box-sizing: border-box; /* <=28 */ box-sizing: border-box; } .fp-slide { float: left; } .fp-slide, .fp-slidesContainer { height: 100%; display: block; } .fp-slides { z-index:1; height: 100%; overflow: hidden; position: relative; -webkit-transition: all 0.3s ease-out; /* Safari<=6 Android<=4.3 */ transition: all 0.3s ease-out; } .fp-section.fp-table, .fp-slide.fp-table { display: table; table-layout:fixed; width: 100%; } .fp-tableCell { display: table-cell; vertical-align: middle; width: 100%; height: 100%; } .fp-slidesContainer { float: left; position: relative; } .fp-controlArrow { position: absolute; z-index: 4; top: 50%; cursor: pointer; width: 0; height: 0; border-style: solid; margin-top: -38px; } .fp-controlArrow.fp-prev { left: 15px; width: 0; border-width: 38.5px 34px 38.5px 0; border-color: transparent #fff transparent transparent; } .fp-controlArrow.fp-next { right: 15px; border-width: 38.5px 0 38.5px 34px; border-color: transparent transparent transparent #fff; } .fp-scrollable { overflow: scroll; } .fp-notransition { -webkit-transition: none !important; transition: none !important; } #fp-nav { position: fixed; z-index: 100; margin-top: -32px; top: 50%; opacity: 1; } #fp-nav.right { right: 17px; } #fp-nav.left { left: 17px; } .fp-slidesNav{ position: absolute; z-index: 4; left: 50%; opacity: 1; } .fp-slidesNav.bottom { bottom: 17px; } .fp-slidesNav.top { top: 17px; } #fp-nav ul, .fp-slidesNav ul { margin: 0; padding: 0; } #fp-nav ul li, .fp-slidesNav ul li { display: block; width: 14px; height: 13px; margin: 7px; position:relative; } .fp-slidesNav ul li { display: inline-block; } #fp-nav ul li a, .fp-slidesNav ul li a { display: block; position: relative; z-index: 1; width: 100%; height: 100%; cursor: pointer; text-decoration: none; } #fp-nav ul li a.active span, .fp-slidesNav ul li a.active span { background: #333; } #fp-nav ul li a span, .fp-slidesNav ul li a span { top: 2px; left: 2px; width: 8px; height: 8px; border: 1px solid #000; background: rgba(0, 0, 0, 0); border-radius: 50%; position: absolute; z-index: 1; } #fp-nav ul li .fp-tooltip { position: absolute; top: -2px; color: #fff; font-size: 14px; font-family: arial, helvetica, sans-serif; white-space: nowrap; max-width: 220px; overflow: hidden; display: block; opacity: 0; width: 0; } #fp-nav ul li:hover .fp-tooltip { -webkit-transition: opacity 0.2s ease-in; transition: opacity 0.2s ease-in; width: auto; opacity: 1; } #fp-nav ul li .fp-tooltip.right { right: 20px; } #fp-nav ul li .fp-tooltip.left { left: 20px; }
下面记录使用fullpage的方法:css3
<link rel="stylesheet" href="css/jquery.fullPage.css"> <script src="js/jquery.min.js"></script> <!-- jquery.easings.min.js 用于 easing 参数,也能够使用完整的 jQuery UI 代替,若是不须要设置 easing 参数,可去掉改文件 --> <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>
<div id="dowebok"> <div class="section"> <h3>第一屏</h3> </div> <div class="section"> <h3>第二屏</h3> </div> <div class="section"> <h3>第三屏</h3> </div> <div class="section"> <h3>第四屏</h3> </div> </div>
每一个 section 表明一屏,默认显示“第一屏”,若是要指定加载页面时显示的“屏幕”,能够在对应的 section 加上 class=”active”,如:git
<div class="section active">第三屏</div>
同时,能够在 section 内加入 slide,如:github
<div id="dowebok"> <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>
$(function(){ $('#dowebok').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开始计算;web direction 判断往上滚动仍是往下滚动,值是 up 或 down。json |
afterRender | 页面结构生成后的回调函数,或者说页面初始化完成后的回调函数 |
afterSlideLoad | 滚动到某一水平滑块后的回调函数,与 afterLoad 相似,接收 anchorLink、index、slideIndex、direction 4个参数 |
onSlideLeave | 某一水平滑块滚动前的回调函数,与 onLeave 相似,接收 anchorLink、index、slideIndex、direction 4个参数 |
在学习了简单的功能以后,我继续学习了下一门课程,利用fullpage来制做一个网站:站酷商店数组