本文實例為大家分享了微信小程序?qū)崿F(xiàn)原生步驟條的具體代碼,供大家參考,具體內(nèi)容如下
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比瑤海網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式瑤海網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務覆蓋瑤海地區(qū)。費用合理售后完善,十多年實體公司更值得信賴。
效果

(步驟條顏色不對是錄制工具的問題)
思路
其實與輪播圖類似,使用了兩個并排的輪播容器,在滑動監(jiān)聽后,給圖片加上移動和縮放動畫。
擴展
可以用于標簽頁的切換。
vue與微信小程序有類似的地方,所以微信小程序做出的效果,原理也可用于vue在網(wǎng)頁上的應用。
代碼
wxml
<view class='window'>
<view class='content' bindtouchstart='touchS' bindtouchend='touchE' style='left:{{left}}rpx'>
<view wx:for="{{list}}">
<!-- 時間線 -->
<view class='pot'>
<view class='{{index == 0?"blank":"line"}}'></view>
<view class='circle' style='background:{{show_index == index?"orange":""}}'></view>
<view class='{{index == length - 1?"blank":"line"}}'></view>
</view>
<!-- 圖片 -->
<view class='pic_container'>
<image class='pic' style='{{show_index != index?"transform:scale(0.5,0.5)":""}}' src="../../images/{{index+1}}.jpg"></image>
</view>
</view>
</view>
</view>wxss
.window{
width: 450rpx;
background-color: #eee;
padding: 25rpx;
position: relative;
overflow: hidden;
margin: 0 auto;
border-radius: 20rpx;
}
.content{
display: flex;
position: relative;
transition: all 0.5s;
}
.content>view{
display: flex;
flex-direction: column;
align-items: center;
}
.pot{
width: 450rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.circle{
border-radius: 100%;
height: 20rpx;
width: 20rpx;
border:4rpx solid orange;
}
.line{
height: 4rpx;
width: 50%;
background: orange;
}
.blank{
height: 4rpx;
width: 50%;
}
.pic_container{
width: 450rpx;
height: 450rpx;
display: flex;
justify-content:center;
align-items: center;
}
.pic{
width: 400rpx;
height: 400rpx;
transition: all 0.5s;
}js
Page({
data: {
list: ['1', '2', '3'],
left:0,
show_index:0
},
onLoad: function () {
this.setData({
length:this.data.list.length
})
},
touchS:function(e){
var that = this;
this.data.start = e.touches[0].pageX;
this.data.start_left = this.data.left;
},
touchE:function(e){
var that = this;
this.data.end = e.changedTouches[0].pageX;
var distance = this.data.end - this.data.start;
//左滑
if (distance <= -40 && this.data.left > -900) {
this.setData({
left: that.data.start_left - 450,
show_index:++ this.data.show_index
})
}
//不滑
else if(distance <= 40){
this.setData({
left: that.data.start_left,
})
}
//右滑
else if (distance > 40 && this.data.left < 0) {
this.setData({
left: that.data.start_left + 450,
show_index: --this.data.show_index
})
}
}
})以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
網(wǎng)站名稱:微信小程序?qū)崿F(xiàn)原生步驟條
文章起源:http://chinadenli.net/article34/ipjise.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務器、網(wǎng)站制作、關(guān)鍵詞優(yōu)化、響應式網(wǎng)站、域名注冊、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)