微信小程序实现Swiper轮播图效果


Posted in Javascript onNovember 22, 2019

本文实例为大家分享了微信小程序轮播图的具体代码,供大家参考,具体内容如下

1.逻辑层

mine.js

// pages/mine/mine.js
Page({
 
 /**
 * 页面的初始数据
 */
 data: {
 /*轮播图 配置*/
 imgUrls: [
 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
 'http://img06.tooopen.com/images/20160818/tooopen_sy_175866434296.jpg',
 'http://img06.tooopen.com/images/20160818/tooopen_sy_175833047715.jpg'
 ],
 indicatorDots: true, // 是否显示面板指示点
 autoplay: true, // 是否自动切换
 interval: 5000, // 自动切换时间间隔
 duration: 500, // 滑动动画时长
 circular: true, // 是否采用衔接滑动
 /*自定义轮播图 配置*/
 slider: [
 { id: '0', linkUrl: 'pages/index/index', picUrl: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg' },
 { id: '0', linkUrl: 'pages/index/index', picUrl: 'http://img06.tooopen.com/images/20160818/tooopen_sy_175866434296.jpg' },
 { id: '0', linkUrl: 'pages/index/index', picUrl: 'http://img06.tooopen.com/images/20160818/tooopen_sy_175833047715.jpg' }
 ],
 swiperCurrent: 0
 },
 
 /**
 * 生命周期函数--监听页面加载
 */
 onLoad: function (options) {
 
 },
 
 //轮播图的切换事件 
 swiperChange: function (e) {
 //只要把切换后当前的index传给<swiper>组件的current属性即可 
 this.setData({
 swiperCurrent: e.detail.current
 })
 },
 //点击指示点切换 
 chuangEvent: function (e) {
 this.setData({
 swiperCurrent: e.currentTarget.id
 })
 }
})

2.页面布局

mine.wxml

<!--pages/mine/mine.wxml-->
<view>
 <!-- 轮播图 -->
 <swiper class="swiper" indicator-dots="{{indicatorDots}}"
 autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}" circular="{{circular}}">
 <block wx:for="{{imgUrls}}" wx:key="id">
 <swiper-item>
 <image src="{{item}}" class="slide-image" />
 </swiper-item>
 </block>
 </swiper>
 <!-- 自定义轮播图 -->
 <view class="swiper-container"> 
 <swiper circular="true" autoplay="auto" interval="5000" duration="500" current="{{swiperCurrent}}" bindchange="swiperChange" class="swiper"> 
 <block wx:for="{{slider}}" wx:key="unique"> 
 <swiper-item data-id="{{item.id}}" data-url="{{item.linkUrl}}"> 
  <image src="{{item.picUrl}}" class="img"></image> 
 </swiper-item> 
 </block> 
 </swiper> 
 <view class="dots"> 
 <block wx:for="{{slider}}" wx:key="unique"> 
 <view class="dot{{index == swiperCurrent ? ' active' : ''}}" bindtap="chuangEvent" id="{{index}}">{{index+1}}</view> 
 </block> 
 </view> 
 </view>
</view>

3.样式

mine.wxss

/* pages/mine/mine.wxss */
/**轮播图 start**/
.swiper {
 height: 400rpx;
 width: 100%;
}
.swiper image {
 height: 100%;
 width: 100%;
}
/**轮播图 end**/
/**自定义轮播图 start**/
.swiper-container{ 
 position: relative; 
} 
.swiper-container .swiper{ 
 height: 400rpx; 
} 
.swiper-container .swiper .img{ 
 width: 100%; 
 height: 100%; 
} 
.swiper-container .dots{ 
 position: absolute; 
 right: 40rpx; 
 bottom: 20rpx; 
 display: flex; 
 justify-content: center; 
} 
.swiper-container .dots .dot{ 
 margin: 0 10rpx; 
 width: 28rpx; 
 height: 28rpx; 
 background: #fff; 
 border-radius: 50%; 
 transition: all .6s; 
 font: 300 18rpx/28rpx "microsoft yahei"; 
 text-align: center; 
} 
.swiper-container .dots .dot.active{ 
 background: #f80; 
 color:#fff; 
}
/**自定义轮播图 end**/

4.效果图

微信小程序实现Swiper轮播图效果

5.参数

微信小程序实现Swiper轮播图效果

更多关于轮播图效果的专题,请点击下方链接查看学习

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

Javascript 相关文章推荐
JS中==与===操作符的比较
Mar 21 Javascript
JQuery中Text方法用法实例分析
May 18 Javascript
JavaScript获得指定对象大小的方法
Jul 01 Javascript
Js遍历键值对形式对象或Map形式的方法
Aug 08 Javascript
基于ajax与msmq技术的消息推送功能实现代码
Dec 26 Javascript
让微信小程序支持ES6中Promise特性的方法详解
Jun 13 Javascript
利用JavaScript对中文(汉字)进行排序实例详解
Jun 18 Javascript
React-router4路由监听的实现
Aug 07 Javascript
vue实现移动端悬浮窗效果
Dec 01 Javascript
Vue 中 a标签上href无法跳转的解决方式
Nov 12 Javascript
浅析Vue 防抖与节流的使用
Nov 14 Javascript
vue3中的组件间通信
Mar 31 Vue.js
Js代码中的span拼接问题解决
Nov 22 #Javascript
微信小程序商品详情页底部弹出框
Nov 22 #Javascript
小程序实现图片预览裁剪插件
Nov 22 #Javascript
Vue数据双向绑定底层实现原理
Nov 22 #Javascript
Node如何后台数据库使用增删改查功能
Nov 21 #Javascript
vue移动端使用appClound拉起支付宝支付的实现方法
Nov 21 #Javascript
微信小程序动态设置图片大小的方法
Nov 21 #Javascript
You might like
提取HTML标签
2006/10/09 PHP
PHP里的中文变量说明
2011/07/23 PHP
用php随机生成福彩双色球号码的2种方法
2013/02/04 PHP
php基于GD库画五星红旗的方法
2015/02/24 PHP
php使用curl获取header检测开启GZip压缩的方法
2018/08/15 PHP
php多进程并发编程防止出现僵尸进程的方法分析
2020/02/28 PHP
jQuery html()方法使用不了无法显示内容的问题
2014/08/06 Javascript
jQuery UI插件自定义confirm确认框的方法
2015/03/20 Javascript
JavaScript让网页出现渐隐渐显背景颜色的方法
2015/04/21 Javascript
jQuery实现类似淘宝网图片放大效果的方法
2015/07/08 Javascript
jQuery入门基础知识学习指南
2015/08/14 Javascript
D3.js实现文本的换行详解
2016/10/14 Javascript
js关于getImageData跨域问题的解决方法
2016/10/14 Javascript
Centos7 中安装 Node.js v4.4.4
2016/11/03 Javascript
javascript中BOM基础知识总结
2017/02/14 Javascript
JavaScript中数组Array方法详解
2017/02/27 Javascript
如何解决.vue文件url引用文件的问题
2019/01/18 Javascript
js动态生成表格(节点操作)
2021/01/12 Javascript
[42:36]DOTA2上海特级锦标赛B组败者赛 VG VS Spirit第二局
2016/02/26 DOTA
python字符串替换示例
2014/04/24 Python
Python中实现从目录中过滤出指定文件类型的文件
2015/02/02 Python
Python做智能家居温湿度报警系统
2018/09/25 Python
python 多个参数不为空校验方法
2019/02/14 Python
Python多线程爬取豆瓣影评API接口
2019/10/22 Python
解决Python3下map函数的显示问题
2019/12/04 Python
Python如何输出百分比
2020/07/31 Python
python dir函数快速掌握用法技巧
2020/12/09 Python
css3让div随鼠标移动而抖动起来
2014/02/10 HTML / CSS
英国独特家具和家庭用品购物网站:Cuckooland
2020/08/30 全球购物
大学生求职信范文
2014/05/24 职场文书
汽车质检员岗位职责
2015/04/08 职场文书
工作犯错保证书
2015/05/11 职场文书
企业法律事务工作总结
2015/08/11 职场文书
2019最新版火锅店的创业计划书 !
2019/07/12 职场文书
Javascript中Microtask和Macrotask鲜为人知的知识点
2022/04/02 Javascript
Win11右下角图标点了没反应怎么办?Win11点击右下角图标无反应解决方法汇总
2022/07/07 数码科技