首頁  >  文章  >  web前端  >  fullpage.js全螢幕滾動插件使用實例

fullpage.js全螢幕滾動插件使用實例

高洛峰
高洛峰原創
2017-01-11 09:35:341451瀏覽

剛做好公司網站,透過全螢幕滾動,顯著提高了官網的瀏覽體驗。遂總結一下使用fullpage.js的方法。歡迎指正

一. fullpage.js簡介

fullpage.js全螢幕滾動插件使用實例

fullpage.js是一套實現瀏覽器全屏滾動的js插件,很多網站現在都使用了其來實現較好的瀏覽體驗。
 可實現的功能:

 •支援前進後退與鍵盤控制
 •多個回呼函數
 •支援手機、平板觸控事件
 •支援CSS3 動畫 •支援時可重複視窗縮放約設定滾動寬度、背景顏色、滾動速度、循環選項、回呼、文字對齊方式等等 


二.外掛程式下載

npm|npm install fullpage.js
bower|bower install fpage.js

//github.com/alvarotrigo/fullPage.js/

cdn|https://cdnjs.com/libraries/fullPage.js 


三.檔案引進方式 

<link rel="stylesheet" href="css/jquery.fullPage.css">
<script src="js/jquery.min.js"></script>
<script src="js/jquery.fullPage.js"></script>

三.檔案引進方式 

<div id="fullpage">
    <div class="section">section1</div>
    <div class="section">section2</div>
    <div class="section">section3</div>
    <div class="section">section4</div>
</div>

引入fullpage。我剛開始寫demo的時候,因為順序錯誤,導致不能實現效果,瀏覽器報錯fullpage.js中的jquery未定義。 


四. 寫html程式碼 

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

所有的內容包含在ID名稱為fullpage的div內,不可以加上body。

 類別名為.section的div元素便是一個單頁,透過滑鼠滾輪和鍵盤可控制不同頁面之間的替換,也可設定清單導航。
 同時,如果要在一個頁面內做橫向的切屏效果,可以在div.section中加入div.slide。程式碼如下: 

$(document).ready(function() {
  $(&#39;#fullpage&#39;).fullpage(
    {
      .......
      //options 详情参看https://github.com/alvarotrigo/fullPage.js/
    } 
  );
});

五.初始化fullpage 

<ul id="myMenu">
      <li data-menuanchor="firstPage" class="active"><a href="#firstPage">First section</a></li>
      <li data-menuanchor="secondPage"><a href="#secondPage">Second section</a></li>
      <li data-menuanchor="thirdPage"><a href="#thirdPage">Third section</a></li>
      <li data-menuanchor="fourthPage"><a href="#fourthPage">Fourth section</a></li>
</ul>

設定側邊欄導覽 


這個導覽一般網站設計都會有,fullpage的導覽樣式是小黑點,也支援一般網站設計預設的樣式。

#myMenu{
  position:fixed;
    ...
}
$(&#39;#fullpage&#39;).fullpage({
  anchors: [&#39;firstPage&#39;, &#39;secondPage&#39;, &#39;thirdPage&#39;, &#39;fourthPage&#39;, &#39;lastPage&#39;],
  menu: &#39;#myMenu&#39;
});

    

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>无标题文档</title>
    <script language="javascript" type="text/javascript">
        function showAllContent(status1,status2){
         document.getElementByIdx("showContent").style.display=status1;
         document.getElementByIdx("showLoad").style.display=status2;
      }
    </script>
  </head>
<body onLoad=&#39;showAllContent("","none")&#39;>
<div id="showLoad" style="z-index:2; display:block; width:auto; height:auto;">页面加载中......</div>
<div id="showContent" style="z-index:1; ">
//最终要显示的内容<br></div><br><script>showAllContent("none","");</script><br></body><br></html>

六.遇到的問題及解決想法 


在網站完成後測試時發現,剛進入頁面,在fullpage.js ,所有已顯示的樣式內容會擠在一塊,當載入完畢後就會恢復。如果網站優化過關且網路速度給力的話,這段時間會比較短,但仍會帶來不好的使用者體驗。

 遂嘗試各種解決方法:
 1.div.section
 section{overflow:hidden} 
經測,這個方法並沒有卵用。

 2.設定空白遮罩,在所有頁面完成前只顯示該遮罩,主題內容隱藏,待載入完成之後,內容顯示遮罩去除。當然也可以在遮罩層設定網站相關內容。

具體的實現方法demo: 
rrreee

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持PHP中文網。

更多fullpage.js全螢幕滾動插件使用實例相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn