vue-swiper滑动到最后或循环到最后一个不动了

本文分享了在使用Swiper组件时遇到的循环播放问题及解决过程。通过添加centeredSlides属性实现循环播放,但导致样式错乱。进一步调整slidesOffsetBefore属性解决了样式问题,并针对IE和谷歌浏览器做了兼容性处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开始一直没事,今天突然发现这个问题,结果网上说的都没用,完全解决不了问题

然后就打开swiper 文档
加了 centeredSlides : true, 居然可以循环播放了,滑动也没问题
但是里面的样式发生了错乱,出现左右两边半个,
然后我就使用slidesOffsetBefore: 就是偏移量

tmd的竟然发现ie和谷歌里面的不一样,实在没办法只能做一下兼容了

created() {
      if (!this.getIsIE()) {  //这个是我写的一个公共的判断是否是ie浏览器的方法
        this.swiperOption.slidesOffsetBefore = 160;    我给slidesOffsetBefore设置的固定值是ie的,这里不是ie就改成谷歌我调的值    
      }
    },

感觉不够完美,只能是临时想得办法了,以后再研究一下

### 实现 Vue.js 中 vue-awesome-swiper 的一页三列布局与无限循环 要在 Vue.js 使用 `vue-awesome-swiper` 插件实现 Swiper 一页显示三列布局并支持无限循环效果,可以通过配置 Swiper 参数来完成。以下是具体方法: #### 配置参数说明 为了实现一页三列布局以及开启无限循环功能,需要设置以下关键参数: - **slidesPerView**: 设置每页展示的滑动项目数量为 3[^1]。 - **spaceBetween**: 控制幻灯片之间的间距[^1]。 - **loop**: 开启无限滚动模式[^1]。 这些参数可以直接通过 `swiper-options` 属性传递给组件。 #### 安装依赖 如果尚未安装插件及其样式文件,则需先执行如下命令进行安装: ```bash npm install vue-awesome-swiper swiper --save ``` #### 组件代码示例 下面是一个完整的代码示例,展示了如何在 Vue.js 中使用 `vue-awesome-swiper` 来创建一个具有一页三列布局和无限循环特性的轮播图。 ```html <template> <div class="swiper-container"> <!-- 轮播容器 --> <swiper :options="swiperOption" ref="mySwiper"> <!-- 幻灯片内容 --> <swiper-slide v-for="(item, index) in items" :key="index">{{ item }}</swiper-slide> <!-- 如果需要分页器 --> <div class="swiper-pagination" slot="pagination"></div> <!-- 如果需要导航按钮 --> <div class="swiper-button-prev" slot="button-prev"></div> <div class="swiper-button-next" slot="button-next"></div> </swiper> </div> </template> <script> import { Swiper, SwiperSlide } from 'vue-awesome-swiper' import 'swiper/swiper-bundle.css' export default { components: { Swiper, SwiperSlide }, data() { return { items: ['Item 1', 'Item 2', 'Item 3', 'Item 4', 'Item 5'], // 数据源 swiperOption: { slidesPerView: 3, // 每页显示三个slide spaceBetween: 30, // slide之间间隔像素数 loop: true, // 启用无限循环模式 pagination: { // 分页器选项 el: '.swiper-pagination', clickable: true }, navigation: { // 导航箭头选项 nextEl: '.swiper-button-next', prevEl: '.swiper-button-prev' } } } } } </script> <style scoped> .swiper-container { width: 80%; margin: auto; } .swiper-slide { text-align: center; /* 可选 */ font-size: 18px; /* 可选 */ background-color: #f7f7f7; /* 可选 */ height: 150px; /* 自定义高度 */ display: flex; align-items: center; justify-content: center; } </style> ``` 以上代码实现了基本的一屏三列布局,并且开启了无限循环的功能。需要注意的是,实际应用中可以根据需求调整 `slidesPerView`, `spaceBetween` 和其他相关属性以适应不同的屏幕尺寸设计风格。 --- ###
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值