vue使用swiper实现中间大两边小的轮播图效果


Posted in Javascript onNovember 24, 2019

项目中使用的vue,刚好有需求要实现轮播图,突出显示当前图片,两边展示其他图片;通过查各种资料,实现了,故在此记录下来

下面我们来看下实现步骤:

  • 第一步:首先在项目index.html中引入swiper的css文件- swiper.min.css
  • 第二部:写入dom结构
<div class="swiper-container">
 <div class="swiper-wrapper">
  <div
   v-for="(item, i) in pictures"
   :key="i"
   class="swiper-slide"
  >
   <!-- 具体内容 -->
   <img
    :src="item.advertiseImages"
    alt="商品图片"
   >
  </div>
 </div>
</div>

第三步:在项目中使用npm安装swiper模块

npm install swiper --save-dev

JS中文网 - 前端进阶资源教程www.javascriptC.com 一个致力于帮助开发者用代码改变世界为使命的平台,每天都可以在这里找到技术世界的头条内容

第四步:在vue文件中引入,并初始化swiper; 先引入swiper

import Swiper from "swiper";

注意初始化需要放入mounted钩子中哦

import Swiper from "swiper";

export default {
 data() {
 return {
 }
 },
 mounted() {
 var mySwiper = new Swiper(".swiper-container", {
   direction: "horizontal",
   loop: false,
   slidesPerView: "auto",
   centeredSlides: true,
   spaceBetween: 20,
   observer: true,
   observeParents: true
 });
 }
}

如果你的项目中,图片是从后台接口获取,那么上面的初始化可能会出问题,这个时候我们采取另外的方式初始化swiper

import Swiper from "swiper";

export default {
 data() {
 return {
  mySwiper: null
 }
 },
 methods: {
 getdata() {
  promise.then(res => {
  this.pictures = res.images || [];
  this.$nextTick(() => {
   this.initSwiper();
  });
  });
 },
 initSwiper() {
   this.mySwiper = new Swiper(".swiper-container", {
    direction: "horizontal",
     loop: false,
     slidesPerView: "auto",
     centeredSlides: true,
     spaceBetween: 20,
     observer: true,
     observeParents: true
   });
   }
 }
}

把swiper的初始化放入vue的nextTick中执行,就解决掉问题啦

第五步:如果想获取当前滚动到哪一张图片怎么办呢

this.mySwiper.activeIndex;

使用activeIndex属性就可以获取到当前图片的索引啦。 那么我们这个功能就完成啦

总结

以上所述是小编给大家介绍的vue使用swiper实现中间大两边小的轮播图效果,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
IE之动态添加DOM节点触发window.resize事件
Jul 27 Javascript
理解JavaScript中的对象 推荐
Jan 09 Javascript
jQuery中bind()方法用法实例
Jan 19 Javascript
js实现仿百度汽车频道选择汽车图片展示实例
May 06 Javascript
jQuery.deferred对象使用详解
Mar 18 Javascript
详解webpack提取第三方库的正确姿势
Dec 22 Javascript
Vue前端开发规范整理(推荐)
Apr 23 Javascript
使用react render props实现倒计时的示例代码
Dec 06 Javascript
JS添加或删除HTML dom元素的方法实例分析
Mar 05 Javascript
vue使用prop可以渲染但是打印台报错的解决方式
Nov 13 Javascript
JavaScript this指向相关原理及实例解析
Jul 10 Javascript
Node.js 中如何收集和解析命令行参数
Jan 08 Javascript
通过GASP让vue实现动态效果实例代码详解
Nov 24 #Javascript
JS控制只能输入数字并且最多允许小数点两位
Nov 24 #Javascript
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
Nov 24 #Javascript
Egg Vue SSR 服务端渲染数据请求与asyncData
Nov 24 #Javascript
mpvue微信小程序开发之实现一个弹幕评论
Nov 24 #Javascript
node.js中Buffer缓冲器的原理与使用方法分析
Nov 23 #Javascript
node.js中事件触发器events的使用方法实例分析
Nov 23 #Javascript
You might like
PHP实现多服务器session共享之NFS共享的方法
2007/03/16 PHP
PHP 七大优势分析
2009/06/23 PHP
PHP 上传文件大小限制
2009/07/05 PHP
详解WordPress中用于更新和获取用户选项数据的PHP函数
2016/03/08 PHP
javascript cookie操作类的实现代码小结附使用方法
2010/06/02 Javascript
jquery $.each()使用探讨
2013/09/23 Javascript
JavaScript截取字符串的Slice、Substring、Substr函数详解和比较
2014/03/20 Javascript
原生js的弹出层且其内的窗口居中
2014/05/14 Javascript
零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
2014/12/20 Javascript
JavaScript中的object转换成number或string规则介绍
2014/12/31 Javascript
js实现卡片式项目管理界面UI设计效果
2015/12/08 Javascript
javascript创建cookie、读取cookie
2016/03/31 Javascript
onmouseover事件和onmouseout事件全面理解
2016/08/15 Javascript
微信小程序 实战程序简易新闻的制作
2017/01/09 Javascript
深入理解JavaScript 参数按值传递
2017/05/24 Javascript
详解mpvue实现对苹果X安全区域的适配
2019/07/31 Javascript
vue实现下拉菜单树
2020/10/22 Javascript
利用python实现AR教程
2019/11/20 Python
详解有关PyCharm安装库失败的问题的解决方法
2020/02/02 Python
Tensorflow设置显存自适应,显存比例的操作
2020/02/03 Python
TensorFlow自定义损失函数来预测商品销售量
2020/02/05 Python
keras绘制acc和loss曲线图实例
2020/06/15 Python
使用python实现名片管理系统
2020/06/18 Python
Python调用OpenCV实现图像平滑代码实例
2020/06/19 Python
Python 串口通信的实现
2020/09/29 Python
如何使用scrapy中的ItemLoader提取数据
2020/09/30 Python
python-jwt用户认证食用教学的实现方法
2021/01/19 Python
详解Django中的FBV和CBV对比分析
2021/03/01 Python
如何将无状态会话Bean发布为WEB服务,只有无状态会话Bean可以发布为WEB服务?
2015/12/03 面试题
个人简历中的自我评价怎么写
2014/01/26 职场文书
护士上岗前培训自我鉴定
2014/04/20 职场文书
525心理活动总结
2014/07/04 职场文书
2014年消防工作总结
2014/11/21 职场文书
党员干部公开承诺书范文
2015/04/27 职场文书
寒假生活随笔
2015/08/15 职场文书
Python字符串常规操作小结
2022/04/03 Python