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 相关文章推荐
网页图片延时加载的js代码
Apr 22 Javascript
js 优化次数过多的循环 考虑到性能问题
Mar 05 Javascript
javascript获得当前的信息的一些常用命令
Feb 25 Javascript
JQuery实现超链接鼠标提示效果的方法
Jun 10 Javascript
KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定
Oct 10 Javascript
移动端界面的适配
Jan 11 Javascript
详解vue组件开发脚手架
Jun 15 Javascript
element-ui 关于获取select 的label值方法
Aug 24 Javascript
如何用Node写页面爬虫的工具集
Oct 26 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变rgba的a值实现)
Jan 24 Javascript
jquery实现的分页显示功能示例
Aug 23 jQuery
在layui tab控件中载入外部html页面的方法
Sep 04 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
rrmdir php中递归删除目录及目录下的文件
2011/05/15 PHP
php 缩略图实现函数代码
2011/06/23 PHP
PHP5中实现多态的两种方法实例分享
2014/04/21 PHP
thinkphp的URL路由规则与配置实例
2014/11/26 PHP
浅谈php的优缺点
2015/07/14 PHP
分享php代码将360浏览器导出的favdb的sqlite数据库文件转换为html
2015/12/09 PHP
jquery创建div 实现代码
2009/04/27 Javascript
jquery带翻页动画的电子杂志代码分享
2015/08/21 Javascript
简单谈谈Vue 模板各类数据绑定
2016/09/25 Javascript
javascript深拷贝的原理与实现方法分析
2017/04/10 Javascript
EasyUI在Panel上动态添加LinkButton按钮
2017/08/11 Javascript
浅谈AngularJs 双向绑定原理(数据绑定机制)
2017/12/07 Javascript
JS中touchstart事件与click事件冲突的解决方法
2018/03/12 Javascript
D3.js实现简洁实用的动态仪表盘的示例
2018/04/04 Javascript
jQuery实现穿梭框效果
2021/01/19 jQuery
可用于监控 mysql Master Slave 状态的python代码
2013/02/10 Python
理解Python中函数的参数
2015/04/27 Python
简单介绍Python中用于求最小值的min()方法
2015/05/15 Python
python 使用get_argument获取url query参数
2017/04/28 Python
Python3学习urllib的使用方法示例
2017/11/29 Python
关于Python正则表达式 findall函数问题详解
2018/03/22 Python
python读取csv文件并把文件放入一个list中的实例讲解
2018/04/27 Python
Python字典中的键映射多个值的方法(列表或者集合)
2018/10/17 Python
python解析json串与正则匹配对比方法
2018/12/20 Python
Python实现的旋转数组功能算法示例
2019/02/23 Python
WxPython建立批量录入框窗口
2019/02/27 Python
在PyTorch中Tensor的查找和筛选例子
2019/08/18 Python
使用python绘制温度变化雷达图
2019/10/18 Python
HTML5 层的叠加的实现
2020/07/07 HTML / CSS
英国时尚优质的女装:Hope Fashion
2018/08/14 全球购物
行政经理岗位职责
2013/11/09 职场文书
注塑工厂厂长岗位职责
2013/12/02 职场文书
遗嘱继承公证书
2014/04/09 职场文书
2014年残联工作总结
2014/11/21 职场文书
大客户经理岗位职责
2015/04/09 职场文书
2015年学校教研室主任工作总结
2015/07/20 职场文书