fullpage.js最后一屏滾動(dòng)方式
這兩天公司網(wǎng)頁(yè)改版用到fullpage.js這個(gè)滾屏插件,頁(yè)面內(nèi)容整屏的滾動(dòng),不成問(wèn)題,各種設(shè)置在網(wǎng)上也都有文檔。
而我遇到的問(wèn)題就是,頁(yè)面內(nèi)容不滿屏的時(shí)候,和上面的內(nèi)容放一塊就太擠,單獨(dú)放一屏就太空,好尷尬的說(shuō)
底部的footer部分就是我要單獨(dú)處理的部分,從網(wǎng)上搜了各種資料,總結(jié)了一下,個(gè)人覺(jué)著最簡(jiǎn)單的方法,寫一篇文章以便以后查閱。
<!--footer及倒數(shù)第二屏的HTML--> <body data-spy="scroll"> <div id="dowebok" class="container-fluid"> <div class="section" id="nextS"> <div class="sect "> <div class="sectcenter4"></div> </div> <div class="sect sectbg2"> <div class="container"> <div class="sectcenter5"></div> </div> </div> </div> <div class="section footerss"><footer class="footer" id="footer"></footer></div> </div> </body>
//初始化滾屏的一些內(nèi)容,最重要的是設(shè)置好錨點(diǎn),這里重點(diǎn)是最后一屏(footer)的錨點(diǎn)footerl $('#dowebok').fullpage({ verticalCentered: false, resize: true, navigation: true, anchors: ['section-1', 'section-2', 'lastScreen','footerl'], });
寫完這些,實(shí)現(xiàn)的就是下面如圖的效果,整個(gè)footer占了一屏,并且是垂直居中顯示的。
根據(jù)要實(shí)現(xiàn)的效果,要做的就是讓footer緊挨著#nextS這一屏(不垂直居中)+到#nextS這一屏的時(shí)候,再往下的滾動(dòng)距離就不能是一屏了(必須是footer的高度)。
按著整個(gè)思路,先解決css的問(wèn)題
.section.footerss .fp-tableCell{//修改最后一屏display屬性 display: block!important; } //實(shí)現(xiàn)footer緊挨著#nextS這一屏顯示,底部出現(xiàn)
下面修改fullpage.js的問(wèn)題,在引用的fullpage.js文件中找到performMovement這個(gè)方法,按照如下方法,修改一下,就可以達(dá)到想要的效果(footer緊挨著上一屏,并且滾動(dòng)的高度是footer的height)
function performMovement(v){ // using CSS3 translate functionality if (options.css3 && options.autoScrolling && !options.scrollBar) { if (v.anchorLink == 'footerl'){ //當(dāng)滾屏到最后一屏?xí)r間 footer_a = $('#nextS').height();//倒數(shù)第二屏的高度 footer_h = $('#footer').height(); //footer的高度 var translate3d = 'translate3d(0px, -' + (v.dtop - footer_a + footer_h) + 'px, 0px)'; }else{ var translate3d = 'translate3d(0px, -' + v.dtop + 'px, 0px)'; } transformContainer(translate3d, true); setTimeout(function () { afterSectionLoads(v); }, options.scrollingSpeed); } // using jQuery animate else{ var scrollSettings = getScrollSettings(v); $(scrollSettings.element).animate( scrollSettings.options , options.scrollingSpeed, options.easing).promise().done(function () { //only one single callback in case of animating `html, body` afterSectionLoads(v); }); } }
這樣修改了之后,就不用擔(dān)心最后一屏不滿屏的問(wèn)題了。
相關(guān)文章
jQuery 淡出一個(gè)圖像到另一個(gè)圖像的實(shí)現(xiàn)代碼
這篇文章主要介紹了jquery的hover事件實(shí)現(xiàn)兩個(gè)圖片的淡出切換效果,需要的朋友可以參考下2013-06-06JQuery實(shí)現(xiàn)鼠標(biāo)滑過(guò)顯示導(dǎo)航下拉列表
我們往往是將同一級(jí)目錄下的欄目先隱藏起來(lái),當(dāng)用戶的鼠標(biāo)滑過(guò)時(shí)則顯示出來(lái)。這就是用javascript實(shí)現(xiàn)的一個(gè)導(dǎo)航欄下拉列表,下面為大家講解下是如何實(shí)現(xiàn)的2013-09-09JQuery中Ajax()的data參數(shù)類型實(shí)例分析
這篇文章主要介紹了JQuery中Ajax()的data參數(shù)類型,結(jié)合實(shí)例形式較為詳細(xì)的分析了ajax方法中data的具體類型,需要的朋友可以參考下2015-12-12jQuery圖片旋轉(zhuǎn)插件jQueryRotate.js用法實(shí)例(附demo下載)
這篇文章主要介紹了jQuery圖片旋轉(zhuǎn)插件jQueryRotate.js用法,結(jié)合實(shí)例形式分析了圖片旋轉(zhuǎn)插件jQueryRotate.js用法,并附帶了demo示例代碼供讀者下載,需要的朋友可以參考下2016-01-01