真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

微信小程序如何實現(xiàn)swiper輪播圖中的圖片自適應(yīng)高度

這篇文章給大家分享的是有關(guān)微信小程序如何實現(xiàn)swiper輪播圖中的圖片自適應(yīng)高度的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

在甘谷等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需定制,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,網(wǎng)絡(luò)營銷推廣,外貿(mào)網(wǎng)站制作,甘谷網(wǎng)站建設(shè)費用合理。

小程序中的輪播圖很簡單,官方都有例子的,但是唯一的缺陷就是swiper是固定死的150px高度,這樣如果傳入的圖片大于這個高度就會被隱藏。辣么,怎樣讓圖片自適應(yīng)不同分辨率捏。

我的思路是:獲取屏幕寬度,獲取圖片的寬高,然后等比設(shè)置當(dāng)前屏幕寬度下swiper的高度。

1.結(jié)構(gòu)


   
    
        //bindload是綁定圖片加載的事件,記得給image加上mode=“widthFix”這個屬性哦,還有就是設(shè)置這個image 100%寬度喲
    
   

swiper的各個屬性在官方文檔中都有,這里就不說明了。最主要的是: style='height:{{Height}}' //動態(tài)設(shè)置swiper的高度

2.在page里面:

data: {
  imgUrls: [          
    '../img/goodsDetail/goods.png',
    '../img/goodsDetail/goods.png',
    '../img/goodsDetail/goods.png'
  ],
  indicatorDots: true,
  autoplay: true,
  interval: 5000,
  duration: 1300,
  bg: '#C79C77',
  Height:""     //這是swiper要動態(tài)設(shè)置的高度屬性
 },
imgHeight:function(e){
  var winWid = wx.getSystemInfoSync().windowWidth; //獲取當(dāng)前屏幕的寬度
  var imgh=e.detail.height;//圖片高度
  var imgw=e.detail.width;//圖片寬度
  var swiperH=winWid*imgh/imgw + "px"http://等比設(shè)置swiper的高度。 即 屏幕寬度 / swiper高度 = 圖片寬度 / 圖片高度  ==》swiper高度 = 屏幕寬度 * 圖片高度 / 圖片寬度
  this.setData({
    Height:swiperH//設(shè)置高度
  })
},

總結(jié):獲取當(dāng)前屏幕寬度: wx.getSystemInfoSync().windowWidth

在小程序里動態(tài)設(shè)置屬性,只有通過setData({ })來設(shè)置,和js中直接操作css樣式有一點類似

注意:image如果外層有個容器裝,然后image設(shè)置width為100%之后,距離裝它的容器底部有一點距離,那是因為image是默認設(shè)置的display:inline-block屬性,這個屬性會產(chǎn)生間隙。如果要撐滿容器,設(shè)置為display:block就可以了。

感謝各位的閱讀!關(guān)于“微信小程序如何實現(xiàn)swiper輪播圖中的圖片自適應(yīng)高度”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!


分享文章:微信小程序如何實現(xiàn)swiper輪播圖中的圖片自適應(yīng)高度
當(dāng)前路徑:http://weahome.cn/article/jsjosi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部