基于jquery實(shí)現(xiàn)全屏滾動(dòng)效果
那么今天就來介紹這款fullPage,與fullPage.js是不同的,fullpage兼容性更佳,能向下兼容到IE6, 不依賴任何 js 庫,可獨(dú)立使用。功能上雖然不如 fullPage.js 強(qiáng)大,但一般使用已經(jīng)足夠了,尤其是它的動(dòng)畫效果,你可以自由設(shè)定縮放、旋轉(zhuǎn)以產(chǎn)生各種各樣的動(dòng)畫效果。同時(shí)它還支持 fullPage.js 所沒有的水平滾動(dòng)。
- 兼容桌面端(ie5.5+) 和 手機(jī)端
- 你可以用它來構(gòu)建你的個(gè)人主頁或者網(wǎng)頁應(yīng)用
- 這是一個(gè)不使用jQuery小巧的框架 不到9KB
再介紹之前先看一看運(yùn)行效果圖:

引入核心庫,pagefull的依賴任何JS庫,所以只需引入它本身就可以了
<script src="js/fullPage.min.js"></script>
寫入html
//請(qǐng)?jiān)趆ead區(qū)加入以下代碼,移動(dòng)端使用
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1">
<!--[if lte IE 7]>
<body scroll="no">
<![endif]-->
<!--[if gt IE 7]><!-->
<body>
<!--<![endif]-->
<div id="pageContain">
<div class="page page1 current">
<div class="contain">
</div>
</div>
<div class="page page2">
<div class="contain">
</div>
</div>
<div class="page page3" data-step="4">
<div class="contain">
<p class="demo-data-step">data-step可以讓你在不切屏的情況下更換動(dòng)畫</p>
</div>
</div>
<div class="page page4">
<div class="contain">
</div>
</div>
<div class="page page5">
<div class="contain">
</div>
</div>
<div class="page page6">
<div class="contain">
</div>
</div>
</div>
<ul id="navBar">
<li>0</li>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</body>
寫入CSS,不熟悉CSS3的朋友請(qǐng)回去補(bǔ)下,這里不做解析了,CSS可以根據(jù)項(xiàng)目的需求自由的定義。
html {
-ms-touch-action: none; /* 阻止windows Phone 的默認(rèn)觸摸事件 */
}
body,
div,
p {
margin: 0;
padding: 0;
}
ul {
list-style: none;
}
body {
width: 100%;
*cursor: default;
overflow: hidden;
font: 16px/1.5 "Microsoft YaHei",Helvetica,STHeiti STXihei,Microsoft JhengHei,Arial;
}
#pageContain {
overflow: hidden;
}
.page {
display: none;
width: 100%;
height: 100%;
overflow: hidden;
position: absolute;
top: 0;
left: 0;
}
.contain {
width: 100%;
height: 100%;
display: none;
position: relative;
z-index: 0;
}
.current .contain,.slide .contain {
display: block;
}
.current {
display: block;
z-index: 1;
}
.slide {
display: block;
z-index: 2;
}
.swipe {
display: block;
z-index: 3;
transition-duration: 0ms !important;
-webkit-transition-duration: 0ms !important;
}
.page1 {
background: #37c1e3;
}
.page2 {
background: #009922;
}
.page3 {
background: #992211;
}
.page4 {
background: #ff00ff;
}
.page5 {
background: #00ff00;
}
.page6 {
background: #22ffff;
}
#navBar {
z-index: 3;
position: absolute;
top: 10%;
right: 3%;
}
#navBar .active {
background: #ccc;
}
#navBar li {
cursor: pointer;
margin-bottom: 10px;
transition: all .7s ease;
border-radius: 50%;
line-height: 40px;
text-align: center;
width: 40px;
height: 40px;
}
p {
width: 200px;
height: 100px;
color:#fff;
text-align: center;
position: absolute;
left: 50%;
top: 50%;
margin-left: -100px;
margin-top: -50px;
opacity: 1;
transition: all .8s ease;
transform-origin: 50% 50%;
}
.step1 p {
transform: translate(0, -50px);
-webkit-transform: translate(0, -50px);
}
.step2 p {
opacity: 0;
transform: scale(2);
-webkit-transform: scale(2);
}
.step3 p {
transform: scale(1);
-webkit-transform: scale(1)
opacity: 1;
}
.step4 p {
-webkit-transform: rotate(360deg) translate(0,-200px) scale(.3);
transform: rotate(360deg) translate(0,-200px) scale(.3);
opacity: 0;
}
寫入JS,實(shí)現(xiàn)效果
var runPage;
runPage = new FullPage({
id : 'pageContain', // 容器id
slideTime : 800, // 每頁切換時(shí)間,單位為毫秒
continuous : false, // 是否循環(huán)(即能從最后頁跳到第一頁面)
effect : { // 滾動(dòng)效果
transform : {
translate : 'Y', // 'X'|'Y'|'XY'|'none' X軸|Y軸|XY軸|無
scale : [.1, 1], // [scalefrom, scaleto] [起始縮放比例, 結(jié)束時(shí)縮放比例]
rotate : [0, 0] // [rotatefrom, rotateto] [起始旋轉(zhuǎn)角度, 結(jié)束時(shí)旋轉(zhuǎn)角度]
},
opacity : [0, 1] // [opacityfrom, opacityto][起始透明度, 結(jié)束時(shí)透明度]
},
mode : 'wheel,touch,nav:navBar', // 轉(zhuǎn)換模式 'wheel,touch,nav:navBar' 表示 '滾輪,觸摸,導(dǎo)航條:導(dǎo)航條id'
easing : 'ease' // easing('ease','ease-in','ease-in-out' 或使用貝塞爾曲線 [.33, 1.81, 1, 1];
// ,onSwipeStart : function(index, thisPage) { // 觸摸開始時(shí)的回調(diào)函數(shù)
// return 'stop';
// }
// ,beforeChange : function(index, thisPage) { // 滑動(dòng)開始時(shí)的回調(diào)函數(shù)
// return 'stop';
// }
// ,callback : function(index, thisPage) { // 滑動(dòng)結(jié)束后的回調(diào)函數(shù)
// alert(index);
// };
});
詳細(xì)參數(shù)設(shè)置
id String – 外層包裹id
slideTime Integer (default:800) – 每頁切換時(shí)間(毫秒)
effect Object (default:{}) – 效果參數(shù)
mode String (default:'') – 轉(zhuǎn)換模式 'wheel,touch,nav:navBar' 表示 '滾輪,觸摸,導(dǎo)航條:導(dǎo)航條id'
callback Function – 滑動(dòng)結(jié)束后的回調(diào)函數(shù)
接口
Fullpage也提供了一些借口供使用此插件的開發(fā)者調(diào)用:
prev() 直接滑向上一頁
next() 直接滑入下一頁
thisPage() 返回當(dāng)前的頁碼
go(num) 直接滑到第num頁
以上就是關(guān)于實(shí)現(xiàn)類似網(wǎng)易郵箱全屏滾動(dòng)的效果,希望大家可以制作一個(gè)適合于自己網(wǎng)站的全屏滾動(dòng)效果。
相關(guān)文章
微信小程序?qū)崿F(xiàn)星級(jí)評(píng)價(jià)效果
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)星級(jí)評(píng)價(jià)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12
Javascript 類的繼承實(shí)現(xiàn)代碼
JavaScript中類的學(xué)習(xí),從基本類繼承過來方法。2009-07-07
JavaScript使用DeviceOne開發(fā)實(shí)戰(zhàn)(四)仿優(yōu)酷視頻應(yīng)用
這篇文章主要介紹了JavaScript使用DeviceOne開發(fā)實(shí)戰(zhàn)(四)仿優(yōu)酷視頻應(yīng)用的相關(guān)資料,需要的朋友可以參考下2015-12-12
JAVASCRIPT模式窗口中下載文件無法接收iframe的流
模式窗口中下載文件,有時(shí)在下載時(shí)發(fā)現(xiàn)服務(wù)器無法接收iframe的流,因?yàn)樵谀J酱翱谥袥]有觸發(fā)iframe的src重新定向事件2013-10-10
解讀input標(biāo)簽的value屬性及name屬性
這篇文章主要介紹了解讀input標(biāo)簽的value屬性,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01

