最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序動態(tài)設(shè)置圖片大小的方法

 更新時間:2019年11月21日 11:48:51   作者:妞小嘜  
這篇文章主要介紹了微信小程序動態(tài)設(shè)置圖片大小的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

我們都知道微信小程序的組件image是用來顯示圖片的,它有一下幾個屬性:

1、src              圖片資源地址

2、mode          圖片裁剪、縮放的模式

3、binderror     當錯誤發(fā)生時,發(fā)布到 AppService 的事件名,事件對象event.detail = {errMsg: ‘something wrong'}

4、bindload     當圖片載入完畢時,發(fā)布到 AppService 的事件名,事件對象event.detail = {height:'圖片高度px', width:'圖片寬度px'}

但是image有默認的固定的寬度和高度,這樣我們在做圖片自適應(yīng)的時候,就不好做了,特別是我們在做一些商品詳情頁的時候,需要image自適應(yīng)屏幕,按原圖比例顯示。那么如何讓image自適應(yīng)比例顯示呢?可以有兩種方法:

一、使用mode:widthFix

widthFix:寬度不變,高度自動變化,保持原圖寬高比不變。

首先我們先設(shè)置image的mode為widthFix,然后給圖片加一個固定rpx的寬度,比如:730rpx。

這樣圖片也可以自適應(yīng)了。。因為小程序的rpx本身就是一個自適應(yīng)顯示的單位

二、使用bindload綁定函數(shù)動態(tài)自適應(yīng)。

我們可以給image綁定一個函數(shù),這個函數(shù),如上面的bindload說明一樣,我們可以獲取到原圖的寬度和高度。

然后計算他們的寬高比率。。然后設(shè)置一個寬度大小(rpx),最后通過style動態(tài)設(shè)置image的寬高。代碼如下:

html代碼:

<image src="{{ item }}" bindload="imageLoad" data-index="{{ index }}" 
style="width:{{ images[index].width }}rpx; height:{{ images[index].height }}rpx;"></image>

js代碼:

Page({
 data: {
  images:{}
 },
 imageLoad: function(e) {
   var $width=e.detail.width,  //獲取圖片真實寬度
     $height=e.detail.height,
     ratio=$width/$height;  //圖片的真實寬高比例
   var viewWidth=718,      //設(shè)置圖片顯示寬度,左右留有16rpx邊距
     viewHeight=718/ratio;  //計算的高度值
   var image=this.data.images; 
   //將圖片的datadata-index作為image對象的key,然后存儲圖片的寬高值
   image[e.target.dataset.index]={
     width:viewWidth,
     height:viewHeight
   }
   this.setData({
      images:image
   })
 }
})

最后,我們就可以可以通過images[index].width images[index].height給每一個圖片設(shè)置寬高了。

效果如下圖所示:

總結(jié)

以上所述是小編給大家介紹的微信小程序動態(tài)設(shè)置圖片大小的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

最新評論

安平县| 聊城市| 海口市| 屏东市| 达拉特旗| 大足县| 碌曲县| 岳普湖县| 乡宁县| 馆陶县| 乌恰县| 巴塘县| 湘潭县| 黑河市| 斗六市| 桑日县| 南溪县| 抚州市| 镇江市| 京山县| 海淀区| 永寿县| 长垣县| 台东市| 金乡县| 同江市| 峨边| 丹巴县| 福安市| 开原市| 恩平市| 鄂尔多斯市| 宁乡县| 同仁县| 长治市| 丰顺县| 泾阳县| 绥中县| 利辛县| 内江市| 塔城市|