我們都知道微信小程序的組件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有默認的固定的寬度和高度,這樣我們在做圖片自適應的時候,就不好做了,特別是我們在做一些商品詳情頁的時候,需要image自適應屏幕,按原圖比例顯示。那么如何讓image自適應比例顯示呢?可以有兩種方法:
一、使用mode:widthFix
widthFix:寬度不變,高度自動變化,保持原圖寬高比不變。
首先我們先設置image的mode為widthFix,然后給圖片加一個固定rpx的寬度,比如:730rpx。
這樣圖片也可以自適應了。。因為小程序的rpx本身就是一個自適應顯示的單位
二、使用bindload綁定函數(shù)動態(tài)自適應。
我們可以給image綁定一個函數(shù),這個函數(shù),如上面的bindload說明一樣,我們可以獲取到原圖的寬度和高度。
然后計算他們的寬高比率。。然后設置一個寬度大小(rpx),最后通過style動態(tài)設置image的寬高。代碼如下:
html代碼:
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。