微信小程序?qū)崿F(xiàn)的3d輪播圖效果示例【基于swiper組件】
本文實(shí)例講述了微信小程序?qū)崿F(xiàn)的3d輪播圖效果。分享給大家供大家參考,具體如下:
前面寫過一篇3d輪播,就是這篇,使用的方法比較笨拙,而且代碼不簡潔。這次發(fā)現(xiàn)swiper也能實(shí)現(xiàn)同樣的效果。故記錄一下。
先看看效果:

wxml:
<swiper previous-margin='50px' next-margin='50px' bindchange="swiperChange" style='height:{{swiperH}};'>
<swiper-item wx:for='{{imgList}}' wx:key=''>
<image class='le-img {{nowIdx==index?"le-active":""}}' bindload='getHeight' src='{{item}}' style='height:{{swiperH}};'></image>
</swiper-item>
</swiper>
(1) previous-margin 和 next-margin 表示前邊距和后邊距,官網(wǎng)文檔有說明的。
(2) swiperChange 就是swiper的切換事件名
(3) style='height:{{swiperH}}' 這是等比設(shè)置swiper高度,因?yàn)閟wiper有固定的高度,所以要動態(tài)修改一下。這篇文章也有類似的做法
(4) getHeight 是獲取圖片的寬高,然后再去設(shè)置高度這樣才能讓圖片等比縮放
wxss:
swiper {
padding-top: 30px;
}
.le-img {
width: 100%;
display: block;
transform: scale(0.8);
transition: all 0.3s ease;
border-radius: 6px;
}
.le-img.le-active {
transform: scale(1);
}
(1) 最主要的就是scale這個屬性了,有了這個屬性才能有第二張圖片縮放的效果。
js:
data: {
swiperH:'',//swiper高度
nowIdx:0,//當(dāng)前swiper索引
imgList:[//圖片列表
"/public/img/idx-ad.png",
"/public/img/idx-ad.png",
"/public/img/idx-ad.png",
]
},
//獲取swiper高度
getHeight:function(e){
var winWid = wx.getSystemInfoSync().windowWidth - 2*50;//獲取當(dāng)前屏幕的寬度
var imgh = e.detail.height;//圖片高度
var imgw = e.detail.width;
var sH = winWid * imgh / imgw + "px"
this.setData({
swiperH: sH//設(shè)置高度
})
},
//swiper滑動事件
swiperChange:function(e){
this.setData({
nowIdx: e.detail.current
})
},
就這些簡單的代碼就完成啦 ^_^
希望本文所述對大家微信小程序開發(fā)有所幫助。
相關(guān)文章
使用JavaScript實(shí)現(xiàn)輪播圖效果完整實(shí)例
我們在各種網(wǎng)頁中經(jīng)常見到輪播圖的效果,下面這篇文章主要給大家介紹了關(guān)于使用JavaScript實(shí)現(xiàn)輪播圖效果的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-01-01
微信小程序?qū)崿F(xiàn)MUI數(shù)字輸入框效果
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)MUI數(shù)字輸入框效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-01-01
設(shè)置checkbox為只讀(readOnly)的兩種方式
設(shè)置checkbox為只讀的方法有很多,在本文為大家詳細(xì)介紹下兩種比較實(shí)用的方法,感興趣的朋友不要錯過2013-10-10
微信小程序?qū)崙?zhàn)之上拉(分頁加載)效果(2)
這篇文章主要介紹了微信小程序?qū)崙?zhàn)之上拉加載、分頁加載效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04

