1. 程式人生 > >jQuery全屏滾動外掛fullPage.js

jQuery全屏滾動外掛fullPage.js

簡介
如今我們經常能見到全屏網站,尤其是國外網站。這些網站用幾幅很大的圖片或色塊做背景,再新增一些簡單的內容,顯得格外的高階大氣上檔次。比如 iPhone 5C 的介紹頁面(檢視),QQ瀏覽器的官網站。如果你也希望你的網站能設計成全屏的,顯得更上檔次,你可以試試 fullPage.js。

fullPage.js 是一個基於 jQuery 的外掛,它能夠很方便、很輕鬆的製作出全屏網站,主要功能有:

支援滑鼠滾動
支援前進後退和鍵盤控制
多個回撥函式
支援手機、平板觸控事件
支援 CSS3 動畫
支援視窗縮放
視窗縮放時自動調整
可設定滾動寬度、背景顏色、滾動速度、迴圈選項、回撥、文字對齊方式等等

使用方法
1、引入檔案

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

2、HTML

<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”,如:

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

同時,可以在 section 內加入 slide,如:

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

3、JavaScript

$(function(){
    $('#dowebok').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個引數