每天分享职场干货,职场案例,与领导同事相处的技巧,软件开发和项目管理的经验。
相比安卓轮播,小程序轮播的实现要容易很多。
小程序提供了官网api提供的swiper组件和swiper slider视图容器。
类型 | 系统默认值 | 解释 |
---|---|---|
布尔代数学体系的 | 错误的 | 自动切换 | 数字 | 0 | 当前页面的索引 | 间隔数字 | 5000 | 自动切换时间间隔 | 期间数字 | 500 | 滑动动画持续时间 | 圆形布尔代数学体系的 | 错误的 | 是否使用关节滑动 | 垂直的布尔代数学体系的 | 错误的 | 滑动方向是纵向的吗? | bindchange事件句柄当前事件发生变化时,将触发变化事件。detail = {当前:当前,来源:来源} |
从公共库v1.4.0开始,变更事件返回的详细信息包含一个源字段,该字段指示变更的原因,可能的值如下:
swiper-项目
只能放在
index.wxss
swiper { height: 421.5rpx; } swiper-item image { width: 100%; height: 100%; } .swiper-container{ position: relative; } .swiper-container .swiper{ height: 300rpx; } .swiper-container .swiper .img{ width: 100%; height: 100%; }
index.jsswiper { 身高:421.5rpx } swiper-item image { width:100%; 身高:100%; } 。swiper-container{ 位置:相对位置; } 。刷洗容器。swiper{ 身高:300rpx } 。刷洗容器。斯威珀。img{ 宽度:100%; 身高:100%; }index.js
Page({ data: { swiperCurrent: 0, indicatorDots: true, autoplay: true, interval: 3000, duration: 800, circular:true, imgUrls: [ 'https://p1.toutiaoimg.com/large/43700001e49d85d3ab52', 'https://p1.toutiaoimg.com/large/39f600038907bf3b9c96', 'https://p1.toutiaoimg.com/large/31fa0003ed7228adf421' ], links:[ '../user/user', '../user/user', '../user/user' ] }, //轮播图的切换事件 swiperChange: function (e) { this.setData({ swiperCurrent: e.detail.current }) }, //点击指示点切换 chuangEvent: function (e) { this.setData({ swiperCurrent: e.currentTarget.id }) }, //点击图片触发事件 swipclick: function (e) { console.log(this.data.swiperCurrent); wx.switchTab({ url: this.data.links[this.data.swiperCurrent] }) } })
index.wxmlpage({ data:{ swiper current:0, indicatorDots: true, autoplay: true, interval: 3000, duration: 800, circular:true, imgUrls: ' https://P1 . toutiao img . com/large/43700001 e 49d 85d 3 ab 52 ',[.../user/user ', '../user/user ', '../user/user' ] },[/h //轮播的切换事件 swiper change:function(e){ this。setdata({ swiper current:e . detail . current }) },[/h //点击指标切换 Chuang event:function(e){ this。setdata({ swiper current:e . current target . id }) }, //点击图片触发事件 swip Click:function(e){ console . log(this . data . swiper current); wx . switch tab({ URL:this . data . links[this . data . swiper current] }) } })index . wxml
<view class="swiper-container"> <swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}" circular="{{duration}}" current="{{swiperCurrent}}" bindchange="swiperChange" class="swiper"> <block wx:for="{{imgUrls}}" wx:key="unique"> <swiper-item> <image src="{{item}}" class="img" bindtap="swipclick" /> </swiper-item> </block> </swiper> </view>
重要一点是图片的点击事件,官网没明确指出。bindtap="swipclick"& ltview class="swiper-container " > & lt;swiper indicator-dots = " { { indicator dots } } " autoplay = " { { autoplay } } " interval = " { { interval } } " duration = " { { duration } } " current = " { { swiper current } } " bind change = " swiper change " class = " swiper " & gt; & lt;block wx:for = " { { imgUrls } } " wx:key = " unique " & gt; & lt;swiper-item & gt; & lt;image src = " { { item } } " class = " img " bind tap = " swip click "/& gt; & lt;/swiper-item & gt; & lt;/block & gt; & lt;/swiper & gt; & lt;/view & gt;重要的一点是图片的点击事件,官网没有明确指出。bindtap="swipclick "
swipclick: function (e) { console.log(this.data.swiperCurrent); wx.switchTab({ url: this.data.links[this.data.swiperCurrent] }) }
swip click:function(e){
console . log(this . data . swiper current);
wx . switch tab({
URL:this . data . links[this . data . swiper current]
})
}