微信小程式實作image圖片自適應寬度

小云云
發布: 2018-03-17 13:16:56
原創
6999 人瀏覽過

本文主要和大家分享微信小程式實作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
		})
  	}
})
登入後複製


相關推薦:

10款image圖片庫實例總結

以上是微信小程式實作image圖片自適應寬度的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板