fullpage.js最后一屏滚动方式


Posted in Javascript onFebruary 06, 2018

这两天公司网页改版用到fullpage.js这个滚屏插件,页面内容整屏的滚动,不成问题,各种设置在网上也都有文档。
而我遇到的问题就是,页面内容不满屏的时候,和上面的内容放一块就太挤,单独放一屏就太空,好尴尬的说

fullpage.js最后一屏滚动方式

底部的footer部分就是我要单独处理的部分,从网上搜了各种资料,总结了一下,个人觉着最简单的方法,写一篇文章以便以后查阅。

<!--footer及倒数第二屏的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>
//初始化滚屏的一些内容,最重要的是设置好锚点,这里重点是最后一屏(footer)的锚点footerl
    $('#dowebok').fullpage({
      verticalCentered: false,
      resize: true,
      navigation: true,
      anchors: ['section-1', 'section-2', 'lastScreen','footerl'],
    });

写完这些,实现的就是下面如图的效果,整个footer占了一屏,并且是垂直居中显示的。

fullpage.js最后一屏滚动方式

根据要实现的效果,要做的就是让footer紧挨着#nextS这一屏(不垂直居中)+到#nextS这一屏的时候,再往下的滚动距离就不能是一屏了(必须是footer的高度)。
按着整个思路,先解决css的问题

.section.footerss .fp-tableCell{//修改最后一屏display属性
    display: block!important;
  }
//实现footer紧挨着#nextS这一屏显示,底部出现

fullpage.js最后一屏滚动方式

下面修改fullpage.js的问题,在引用的fullpage.js文件中找到performMovement这个方法,按照如下方法,修改一下,就可以达到想要的效果(footer紧挨着上一屏,并且滚动的高度是footer的height)

function performMovement(v){ 
 // using CSS3 translate functionality 
 
 if (options.css3 && options.autoScrolling && !options.scrollBar) { 
 

if (v.anchorLink == 'footerl'){ //当滚屏到最后一屏时间 
 


footer_a = $('#nextS').height();//倒数第二屏的高度 
 


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

 }); 
 
} 
 }

这样修改了之后,就不用担心最后一屏不满屏的问题了。

Javascript 相关文章推荐
js各种验证文本框输入格式(正则表达式)
Oct 22 Javascript
基于jquery的放大镜效果
May 30 Javascript
jquery中对于批量deferred的处理方法
Jan 22 Javascript
js分页工具实例
Jan 28 Javascript
jQuery设置和移除文本框默认值的方法
Mar 09 Javascript
jQuery实现购物车计算价格功能的方法
Mar 25 Javascript
JavaScript实现强制重定向至HTTPS页面
Jun 10 Javascript
浅析JavaScript中的变量复制、参数传递和作用域链
Jan 13 Javascript
从0开始学Vue
Oct 27 Javascript
详解如何将angular-ui的图片轮播组件封装成一个指令
May 09 Javascript
vue-cli脚手架引入弹出层layer插件的几种方法
Jun 24 Javascript
JavaScript实现轮播图片完整代码
Mar 07 Javascript
解决npm安装Electron缓慢网络超时导致失败的问题
Feb 06 #Javascript
微信小程序使用Promise简化回调
Feb 06 #Javascript
JS设计模式之命令模式概念与用法分析
Feb 06 #Javascript
使用selenium抓取淘宝的商品信息实例
Feb 06 #Javascript
vue一个页面实现音乐播放器的示例
Feb 06 #Javascript
使用百度地图实现地图网格的示例
Feb 06 #Javascript
js中的闭包学习心得
Feb 06 #Javascript
You might like
php4的彩蛋
2006/10/09 PHP
typecho插件编写教程(三):保存配置
2015/05/28 PHP
PHP环境中Memcache的安装和使用
2015/11/05 PHP
从JavaScript的函数重名看其初始化方式
2007/03/08 Javascript
jquery自动完成插件(autocomplete)应用之PHP版
2009/12/15 Javascript
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
Javascript base64编码实现代码
2011/12/02 Javascript
javascript-表格排序(降序/反序)实现介绍(附图)
2013/05/30 Javascript
js查找节点的方法小结
2015/01/13 Javascript
Node.js开发教程之基于OnceIO框架实现文件上传和验证功能
2016/11/30 Javascript
清除输入框内的空格
2016/12/21 Javascript
jQuery实现给input绑定回车事件的方法
2017/02/09 Javascript
js实现日历与定时器
2017/02/22 Javascript
解决vue.js 数据渲染成功仍报错的问题
2018/08/25 Javascript
微信小程序提交form操作示例
2018/12/30 Javascript
手挽手带你学React之React-router4.x的使用
2019/02/14 Javascript
在node环境下parse Smarty模板的使用示例代码
2019/11/15 Javascript
深入源码解析Python中的对象与类型
2015/12/11 Python
python中list列表的高级函数
2016/05/17 Python
Python实现的寻找前5个默尼森数算法示例
2018/03/25 Python
Python3.6笔记之将程序运行结果输出到文件的方法
2018/04/22 Python
关于pymysql模块的使用以及代码详解
2019/09/01 Python
Django静态资源部署404问题解决方案
2020/05/11 Python
使用canvas压缩图片大小的方法示例
2019/08/02 HTML / CSS
天猫超市:阿里巴巴打造的网上超市
2016/11/02 全球购物
市政施工员自我鉴定
2014/01/15 职场文书
刊首寄语大全
2014/04/11 职场文书
《陈毅探母》教学反思
2014/05/01 职场文书
关于祖国的演讲稿
2014/05/04 职场文书
八项规定对照检查材料
2014/08/31 职场文书
骆驼祥子读书笔记
2015/06/26 职场文书
大学军训通讯稿(2016最新版)
2015/12/21 职场文书
元素水平垂直居中的方式
2021/03/31 HTML / CSS
springboot拦截器无法注入redisTemplate的解决方法
2021/06/27 Java/Android
sqlserver连接错误之SQL评估期已过的问题解决
2022/03/23 SQL Server
Smart 2 车辆代号 HC11 全新谍照曝光
2022/04/21 数码科技