React项目中使用fullpage.js实现整屏翻页

最近笔者在完成一个移动端小项目的过程中需要实现整屏翻页的效果;调研完毕之后,最终决定使用pullPage.js实现此功能。理由也很简单,fullPage.js使用起来比较方便,并且官网上也给了在react项目中使用的demo。本文记录了这个第三方库的使用过程。

1. 安装

bash 复制代码
yarn add fullpage.js

2. 项目中引入

js 复制代码
import fullpage from 'fullpage.js';
import 'fullpage.js/dist/fullpage.css';

3. 挂载

在dom加载完成之后,实例化fullpage

js 复制代码
  useEffect(() => {
    new fullpage('#fullpage', {
      credits: { enabled: false, label: '', position: 'right' },
      // fullpage.js的配置选项
      // 例如:sectionsColor, navigation等
    });
  }, []);

new fullpage的时候会自动去寻找id为fullpage的dom元素 ,因此一定保证根元素的id为fullpage,如下所示:

jsx 复制代码
    <div id="fullpage">
      <div className='section' style={{ boxSizing: 'border-box', height: window.innerHeight }}>
      ...
      </div>
    </div>

fullpage作用的对象是 ,而页使用section这个类名来表示,如上面的代码所示。

4. 修改

fullpage.js夹杂了一些私货,需要手动去除

css 复制代码
.fp-overflow {
  height: 100%;
}

.fp-watermark {
  display: none;
}

第一个消除的是垂直方向的居中,一般来说不需要;

第二个则是这个组件的商标,也需要去掉。

相关推荐
叫我菜菜就好31 分钟前
【Flutter_Web】Flutter编译Web第三篇(网络请求篇):dio如何改造方法,变成web之后数据如何处理
前端·网络·flutter
NoneCoder37 分钟前
CSS系列(26)-- 动画性能优化详解
前端·css·性能优化
滚雪球~37 分钟前
@vue/cli启动异常:ENOENT: no such file or directory, scandir
前端·javascript·vue.js
GDAL1 小时前
vue3入门教程:ref函数
前端·vue.js·elementui
GISer_Jing1 小时前
Vue3状态管理——Pinia
前端·javascript·vue.js
好开心331 小时前
axios的使用
开发语言·前端·javascript·前端框架·html
Domain-zhuo1 小时前
Git常用命令
前端·git·gitee·github·gitea·gitcode
菜根Sec2 小时前
XSS跨站脚本攻击漏洞练习
前端·xss
m0_748257182 小时前
Spring Boot FileUpLoad and Interceptor(文件上传和拦截器,Web入门知识)
前端·spring boot·后端
桃园码工2 小时前
15_HTML5 表单属性 --[HTML5 API 学习之旅]
前端·html5·表单属性