vue实现整屏滚动切换


Posted in Javascript onJune 29, 2020

本文实例为大家分享了vue实现整屏滚动切换的具体代码,供大家参考,具体内容如下

1、下载vue-awesome-swiper

npm i vue-awesome-swiper -S

2、在main.js引入

import vueAwesomeSwiper from 'vue-awesome-swiper'
Vue.use(vueAwesomeSwiper);

3、直接上案例,新建一个路由页面

<template>
 <div class="hello-world">
 <swiper id="swiperBox" v-bind:options="swiperOption" ref="mySwiper">
  <swiper-slide class="swiper-slide" v-for="(item, index) in list" :key="index">
  <div class="page">
   <h3>第{{item}}页</h3>
  </div>
  </swiper-slide>
 </swiper>
 </div>
</template>
 
<script>
import { swiper, swiperSlide } from "vue-awesome-swiper";
export default {
 name: "HelloWorld",
 data() {
 return {
  list: [], //轮换列表
  swiperOption: {
  notNextTick: true, //notNextTick是一个组件自有属性,如果notNextTick设置为true,组件则不会通过NextTick来实例化swiper,也就意味着你可以在第一时间获取到swiper对象,假如你需要刚加载遍使用获取swiper对象来做什么事,那么这个属性一定要是true
  direction: "vertical", //水平方向移动
  grabCursor: true, //鼠标覆盖Swiper时指针会变成手掌形状,拖动时指针会变成抓手形状
  setWrapperSize: true, //Swiper使用flexbox布局(display: flex),开启这个设定会在Wrapper上添加等于slides相加的宽或高,在对flexbox布局的支持不是很好的浏览器中可能需要用到。
  autoHeight: true, //自动高度。设置为true时,wrapper和container会随着当前slide的高度而发生变化
  slidesPerView: 1, //设置slider容器能够同时显示的slides数量(carousel模式)。可以设置为数字(可为小数,小数不可loop),或者 'auto'则自动根据slides的宽度来设定数量。loop模式下如果设置为'auto'还需要设置另外一个参数loopedSlides。
  mousewheel: true, //开启鼠标滚轮控制Swiper切换。可设置鼠标选项,默认值false
  mousewheelControl: true, //同上
  height: window.innerHeight, // 高度设置,占满设备高度
  resistanceRatio: 0, //抵抗率。边缘抵抗力的大小比例。值越小抵抗越大越难将slide拖离边缘,0时完全无法拖离。本业务需要
  observeParents: true, //将observe应用于Swiper的父元素。当Swiper的父元素变化时,例如window.resize,Swiper更新
 
  // 如果自行设计了插件,那么插件的一些配置相关参数,也应该出现在这个对象中,如下debugger
  //debugger: true,
 
  // swiper的各种回调函数也可以出现在这个对象中,和swiper官方一样
  on: {
   //监听滑动切换事件,返回swiper对象
   slideChange: () => {
   let swiper = this.$refs.mySwiper.swiper;
   console.log(swiper.activeIndex); //滑动打印当前索引
   if (swiper.activeIndex === this.list.length - 1) {
    //到最后一个加载更多数据
    let newList = [];
    let listLength = this.list.length;
    for (let i = 0; i < 10; i++) {
    newList.push(listLength + i);
    }
    this.list = this.list.concat(newList);
   }
   }
  }
  }
 };
 },
 created() {
 //从后台获取数据
 this.list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
 },
 // 如果你需要得到当前的swiper对象来做一些事情,你可以像下面这样定义一个方法属性来获取当前的swiper对象,同时notNextTick必须为true
 computed: {
 swiper() {
  return this.$refs.mySwiper.swiper;
 }
 },
 mounted() {
 // this.swiper.slideTo(3, 1000, false); //手动跳到指定页
 },
 components: {
 swiper,
 swiperSlide
 }
};
</script>
 
<style scoped>
.swiper-slide {
 font-size: 24px;
 text-align: center;
 line-height: 100px;
}
.swiper-slide:nth-child(2n) {
 background: skyblue;
}
.swiper-slide:nth-child(2n-1) {
 background: seashell;
}
</style>

4、电脑浏览器可能有问题,请使用真机测试

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Prototype Template对象 学习
Jul 19 Javascript
浅析JQuery UI Dialog的样式设置问题
Dec 18 Javascript
jquery ajax跨域解决方法(json方式)
Feb 04 Javascript
总结在前端排序中遇到的问题
Jul 19 Javascript
Vue.js tab实现选项卡切换
May 16 Javascript
利用Vue.js实现求职在线之职位查询功能
Jul 03 Javascript
微信小程序-滚动消息通知的实例代码
Aug 03 Javascript
angularjs 缓存的使用详解
Mar 19 Javascript
微信小程序scroll-view实现字幕滚动
Jul 14 Javascript
js动态设置select下拉菜单的默认选中项实例
Aug 21 Javascript
vue 中滚动条始终定位在底部的方法
Sep 03 Javascript
javascrpt密码强度校验函数详解
Mar 18 Javascript
vue实现页面切换滑动效果
Jun 29 #Javascript
微信小程序实现导航栏和内容上下联动功能代码
Jun 29 #Javascript
Vue.js中Line第三方登录api的实现代码
Jun 29 #Javascript
vue实现列表滚动的过渡动画
Jun 29 #Javascript
element跨分页操作选择详解
Jun 29 #Javascript
vue实现数字滚动效果
Jun 29 #Javascript
js实现从右往左匀速显示图片(无缝轮播)
Jun 29 #Javascript
You might like
php实现查询百度google收录情况(示例代码)
2013/08/02 PHP
详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)
2017/04/07 PHP
PHP实现动态获取函数参数的方法示例
2018/04/02 PHP
js中判断文本框是否为空的两种方法
2011/07/31 Javascript
js读取注册表的键值示例
2013/09/25 Javascript
js 判断图片是否加载完以及实现图片的预下载
2014/08/14 Javascript
JQuery实现可直接编辑的表格
2015/04/16 Javascript
关注jquery技巧提高jquery技能(前端开发必学)
2015/11/02 Javascript
JavaScript+html5 canvas实现图片破碎重组动画特效
2016/02/22 Javascript
JavaScript学习笔记之数组去重
2016/03/23 Javascript
javascript css红色经典选项卡效果实现代码
2016/05/17 Javascript
深入浅析Vue组件开发
2016/11/25 Javascript
JavaScript严格模式详解
2017/01/16 Javascript
一个基于react的图片裁剪组件示例
2018/04/18 Javascript
python中查找excel某一列的重复数据 剔除之后打印
2013/02/10 Python
Python显示进度条的方法
2014/09/20 Python
详解用python实现简单的遗传算法
2018/01/02 Python
python 利用栈和队列模拟递归的过程
2018/05/29 Python
Python开发的十个小贴士和技巧及长常犯错误
2018/09/27 Python
pycharm修改界面主题颜色的方法
2019/01/17 Python
Python利用lxml模块爬取豆瓣读书排行榜的方法与分析
2019/04/15 Python
如何使用Python自动控制windows桌面
2019/07/11 Python
python实现身份证实名认证的方法实例
2019/11/08 Python
python多线程semaphore实现线程数控制的示例
2020/08/10 Python
手把手教你用纯css3实现轮播图效果实例
2017/05/04 HTML / CSS
用CSS3的box-reflect来制作倒影效果
2016/11/15 HTML / CSS
使用phonegap检测网络状态的方法
2017/03/30 HTML / CSS
匡威西班牙官网:Converse西班牙
2019/10/01 全球购物
师范大学音乐表演专业求职信
2013/10/23 职场文书
文言文形式的学生求职信
2013/12/03 职场文书
应届大专生自荐书
2014/06/16 职场文书
2015年员工工作总结范文
2015/04/08 职场文书
公司放假通知范文
2015/04/14 职场文书
2016年师德先进个人事迹材料
2016/02/29 职场文书
原来闭幕词是这样写的呀!
2019/07/01 职场文书
原型和原型链 prototype和proto的区别详情
2021/11/02 Javascript