本文主要和大家分享微信小程式實作image圖片自適應寬度,希望能幫助大家,首先我們先來了解image元件。
一.了解image元件
#由於image有預設的固定的寬度和高度,這樣我們在做圖片自適應的時候,就不好做了。 下面就來一起解決下
二。方法
(一).使用mode:widthFix
widthFix:寬度不變,高度自動變化,原始圖寬高比不變。
首先我們先設定image的mode為widthFix,然後再為圖片加上一個固定rpx的寬度,例如:730rpx。
這樣圖片也可以自適應了。 。因為小程式的rpx本身就是一個自適應顯示的單位
(二).使用bindload綁定函式動態自適應。
我們可以給image綁定一個函數,這個函數,如上面的bindload說明一樣,我們可以得到原始圖的寬度和高度。
然後計算他們的寬高比率。 。然後設定一個寬度大小(rpx),最後透過style動態設定image的寬高。程式碼如下:
1..寫頁面結構index.wxml:
<image src="../uploads/2.jpg" bindload="imageLoad" style="width:{{imgwidth}}rpx; height:{{imgheight }}rpx;"></image>
2.設定資料index.js
//获取应用实例 var app = getApp() Page({ data: { screenWidth: 0, screenHeight:0, imgwidth:0, imgheight:0, }, onLoad: function() { var _this = this; wx.getSystemInfo({ success: function(res) { _this.setData({ screenHeight: res.windowHeight, screenWidth: res.windowWidth, }); } }); }, imageLoad: function(e) { var _this=this; var $width=e.detail.width, //获取图片真实宽度 $height=e.detail.height, ratio=$width/$height; //图片的真实宽高比例 var viewWidth=500, //设置图片显示宽度, viewHeight=500/ratio; //计算的高度值 this.setData({ imgwidth:viewWidth, imgheight:viewHeight }) } })
相關推薦:
以上是微信小程式實作image圖片自適應寬度的詳細內容。更多資訊請關注PHP中文網其他相關文章!