小程序中的图片自适应

1、使用mode:widthFix

   widthFix:宽度不变,高度自动变化,保持原图宽高比不变。
   首先我们先设置image的mode为widthFix,然后给图片加一个固定rpx的宽度,比如:730rpx。
   这样图片也可以自适应了。。因为小程序的rpx本身就是一个自适应显示的单位

2、使用bindload绑定函数动态自适应。

   我们先给image绑定一个函数,这个函数,使用bindload绑定函数动态自适应,我们可以获取到原图的宽度和高度。
   然后计算他们的宽高比。然后设置一个宽度大小(rpx),最后通过style动态设置image的宽高。

 <image src="../uploads/2.jpg" bindload="imageLoad"  style="width:{{imgwidth}}rpx; height:{{imgheight }}rpx;"></image>
    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  
        })  
     }  

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值