核心提示:基于vue的单页滚动插件vue-fullpage基于vue的fullpage.js功能概述可实现移动端的单页滚动效果,支持横向滚动和纵向滚动兼容性目前还未进行大规模兼容性测试。有bug请提问至issu...
基于vue的单页滚动插件
vue-fullpage
基于vue的fullpage.js
功能概述
可实现移动端的单页滚动效果,支持横向滚动和纵向滚动
兼容性
目前还未进行大规模兼容性测试。有bug请提问至issues
安装
npm install vue-fullpage --save
commonjs
import VueFullpage from 'vue-fullpage' Vue.use(VueFullpage)
或
var vueFullpage = require('vue-fullpage') Vue.use(vueFullpage)
文档
api文档
快速上手
main.js
在main.js需要引入该插件的css和js文件
import VueFullpage from 'vue-fullpage' Vue.use(VueFullpage)
app.vue
模板部分:在page-container容器加入v-cover指令防止闪烁 在page-wp容器上加v-page指令,指令值是fullpage的配置
<p class="page-container"> <p v-page="opts" class="page-wp"> <p class="page page1"> <p class="part part1" v-animate="'slideIn'"> vue-fullpage </p> </p> <p class="page page2"> <p class="part part2" v-animate="'slideIn'"> vue-fullpage </p> </p> <p class="page page3"> <p class="part part3" v-animate="'slideIn'"> vue-fullpage </p> </p> <p class="page page4"> <p class="part part4" v-animate="'fadeIn'"> vue-fullpage </p> </p> </p> </p>
js部分:提供vue-fullpage的自定义指令
<script> export default { data () { return { opts: { start: 0, dir: 'v', loop: false, duration: 500, stopPageScroll: true, beforeChange: function (prev, next) { }, afterChange: function (prev, next) { } } } } } </script>
css部分:page-container需要固定宽度和高度,fullpage会使用父元素的宽度和高度。
如下设置可使滚动页面充满全屏
<style> .page-container { position: absolute; left: 0; top: 0; width: 100%; height: 100%; } </style>
demo
地址:
请使用chrome的手机模拟器或手机浏览器访问
https://vue.wendaosanshou.top/vue_fullpage_demo/