微信小程序之使用swiper组件实现3D轮播图效果【附demo源码】欢迎点赞收藏
本文主要介绍了微信小程序基于 swiper 组件来实现一个 3D 轮播图效果。本文采用示例分析得形式,对微信小程序基于 swiper 组件的相关属性设置、事件响应以及操作技巧进行分析,可以很容易解决,希望对您的工作学习有所帮助,如果有用欢迎一键三连!一、官方文档:swiper (滑块视图容器):https://developers.weixin.qq.com/miniprogram/dev/com
本文主要介绍了微信小程序基于 swiper
组件来实现一个 3D 轮播图效果。本文采用示例分析得形式,对微信小程序基于 swiper
组件的相关属性设置、事件响应以及操作技巧进行分析,可以很容易解决,希望对您的工作学习有所帮助,如果有用欢迎一键三连!
一、官方文档:
swiper (滑块视图容器):
https://developers.weixin.qq.com/miniprogram/dev/component/swiper.html
二、效果图:
三、代码详解:
实现原理:主要利用了 circular
实现无限滚动,然后再加上前后间距(previous-margin
和 next-margin
),再设置图片的层级和透明度就可以实现了,最后将图片及容器的高度设置好就差不多很漂亮了
wxml文件
<!--pages/home/index.wxml-->
<swiper
class="imageContainer"
bindchange="handleChange"
previous-margin="80rpx"
next-margin="80rpx"
circular
autoplay
>
<block wx:for="{{3}}" wx:key="{{index}}">
<swiper-item class="item">
<image class="itemImg {{currentIndex == index ? 'active': ''}}" src="../../static/images/login.jpg"></image>
</swiper-item>
</block>
</swiper>
属性解释:
-
handleChange
:swiper的切换事件名 -
previous-margin
:与上一张图片的间距,前边距 -
next-margin
:与下一张图片的间距,后边距 -
circular
:是否衔接滑动,就是实现无限滚动 -
autoplay
:实现自动滚动以上几个属性官网都有介绍,不清楚的可以去看一下
wxss文件
/* pages/home/index.wxss */
.imageContainer {
width: 100%;
height: 500rpx;
}
.item {
height: 500rpx;
}
.itemImg {
position: absolute;
width: 90%;
height: 300rpx;
border-radius: 15rpx;
z-index: 5;
opacity: 0.7;
top: 13%;
margin: 0 30rpx;
}
.active {
opacity: 1;
z-index: 10;
height: 360rpx;
top: 7%;
transition: all .2s ease-in 0s;
}
js文件
// pages/home/index.js
Page({
data: {
currentIndex: 0
},
/* 这里实现控制中间凸显图片的样式 */
handleChange: function (e) {
this.setData({
currentIndex: e.detail.current
})
},
})
具体参数根据自己的页面配置进行调整就可以了,相信实现出来肯定很漂亮。
四、demo源码:
上面三段代码直接 copy 到你的项目上就可以直接运行啦。
更多推荐
所有评论(0)