技術選型javascript
html5 css3 jqcss
應用的插件html
FullPage.jshtml5
1、建一個測試頁面,測試靜態的功能java
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"/> <meta name="viewport" content="width=device-width, minimum-scale=1, maximum-scale=1"> <title>慕課網2015課程學習狀況</title> <style> body{ margin:0; padding:0; } .component{ width: 50%; height:50px; margin-bottom:20px; background-color: red; display: none; } </style> <body> <!-- 用於驗證 fullpage.js 切換頁面,以及內容組織結構可用,組件可以進行動畫 --> <div id="h5">
<!-- 給每一個須要翻頁的頁面添加section類 給定不一樣的ID --> <div class="page section" id="page-1"> <div class="component">logo</div> <div class="component slogan">slogan</div> </div> <div class="page section" id="page-2"> <div class="component">logo</div> <div class="component slogan">slogan</div> </div> <div class="page section" id="page-3"> <div class="component">logo</div> <div class="component slogan">slogan</div> </div> </div> </body> </html>
2、首先載入fullpage.jsjquery
<script type="text/javascript" src="../js/lib/jquery.js"></script> <script type="text/javascript" src="../js/lib/jquery-ui.min.js"></script> <script type="text/javascript" src="../js/lib/jquery.fullPage.js"></script>
3、測試功能是否無缺。css3
$(function (){ $('#h5').fullpage({ //傳入背景色 sectionsColor 後面接對象。 'sectionsColor': ['#254875', '#00ff00', '#245874'], /* * 傳入回掉函數 onLeave afterLoad * afterLoad * 滾動到某一屏後的回調函數,接收 anchorLink 和 index 兩個參數, * anchorLink 是錨連接的名稱,index 是序號,從1開始計算 * onLeave * 滾動前的回調函數,接收 index、nextIndex 和 direction 3個參數: * index 是離開的「頁面」的序號,從1開始計算; * nextIndex 是滾動到的「頁面」的序號,從1開始計算; * direction 判斷往上滾動仍是往下滾動,值是 up 或 down。 * */ onLeave: function (index, nextIndex, direction) { //讓page執行onLeave事件。 $('#h5').find('.page').eq(index-1).trigger('onLeave'); }, afterLoad: function (anchorLink, index) { //讓page執行onLoad事件。 $('#h5').find('.page').eq(index-1).trigger('onLoad'); }, }); //給page頁面綁定onLeave事件。 $('.page').on('onLeave',function () { console.log($(this).attr('id'),'====>','onleave'); //讓component執行onLeave事件。 $(this).find('.component').trigger('onLeave'); }) //給page頁面綁定onLoad事件。 $('.page').on('onLoad',function () { console.log($(this).attr('id'),'====>','onLoad'); //讓component執行onLoad事件。 $(this).find('.component').trigger('onLoad'); }) //給component頁面綁定onLoad事件。 $('.component').on('onLoad',function () { $(this).fadeIn(); //防止事件冒泡。循環傳播。 return false; }) //給component頁面綁定onLeave事件。 $('.component').on('onLeave',function () { $(this).fadeOut(); return false; }) });