swiper实现滑动放大缩小效果

 

wxml

<swiper class="swiper-block" bindchange="swiperChange" previous-margin="90rpx" next-margin="90rpx" current="0">

<block wx:for="{ {imgUrls}}" wx:index="{ {index}}">

<swiper-item class="swiper-item">

<image mode="aspectFill" src="{ {item}}" class="slide-image { {currentIndex == index ? active : }}" />

</swiper-item>

</block>

</swiper>

wxss

.swiper-block {

height: 480rpx;

width: 100%;

}

.swiper-item{

display: flex;

flex-direction: column;

justify-content: center;

align-items: flex-start;

overflow: unset;

}

.slide-image{

height: 320rpx;

width: 520rpx;

border-radius: 9rpx;

box-shadow: 0px 0px 30rpx rgba(0, 0, 0, 0.2);

margin: 0rpx 30rpx;

z-index: 1;

}

.active{

transform: scale(1.14);

transition: all .2s ease-in 0s;

z-index: 20;

}

js

Page({

data: {

currentIndex: 0,

imgUrls: [

/image/b2.jpg,

/image/b1.jpg,

/image/b3.jpg

]

},

swiperChange: function (e) {

this.setData({

currentIndex: e.detail.current

})

}

})

经验分享 程序员 微信小程序 职场和发展