E企盈营销工具技术服务商 热线:4006-838-530

微信小程序image图片自适应宽度比例显示的方法

E企盈直播平台营销卖货系统

我们都知道微信小程序的组件image是用来显示图片的,它有一下几个属性:1、src              图片资源地址2、mode          图片裁剪、缩放的模式3、binderror     当错误发生时,发布到 AppService 的事件名,事件对象event.detail = {errMsg: ‘something wrong’}4、bindload     当图片载入完毕时,发布到 AppService 的事件名,事件对象event.detail = {height:’图片高度px’, width:’图片宽度px’}但是image有默认的固定的宽度和高度,这样我们在做图片自适应的时候,就不好做了,特别是我们在做一些商品详情页的时候,需要image自适应屏幕,按原图比例显示。那么如何让image自适应比例显示呢?可以有两种方法:一、使用mode:widthFixwidthFix:宽度不变,高度自动变化,保持原图宽高比不变。首先我们先设置image的mode为widthFix,然后给图片加一个固定rpx的宽度,比如:730rpx。这样图片也可以自适应了。。因为小程序的rpx本身就是一个自适应显示的单位二、使用bindload绑定函数动态自适应。我们可以给image绑定一个函数,这个函数,如上面的bindload说明一样,我们可以获取到原图的宽度和高度。然后计算他们的宽高比率。。然后设置一个宽度大小(rpx),最后通过style动态设置image的宽高。代码如下:html代码:image src=”{{ item }}” bindload=”imageLoad” data-index=”{{ index }}” style=”width:{{ images[index].width }}rpx; height:{{ images[index].height }}rpx;”/imagejs代码:Page({  data: {    images:{}  },  imageLoad: function(e) {     var $width=e.detail.width,    //获取图片真实宽度         $height=e.detail.height,         ratio=$width/$height;    //图片的真实宽高比例     var viewWidth=718,           //设置图片显示宽度,左右留有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给每一个图片设置宽高了。以上是自己在玩小程序时,关于image自适应方法的简单记录。。效果如下图所示:原文地址:http://www.qianduan8.com/1005.html

赞(0) 打赏
未经允许不得转载:E企盈小程序开发-热线:4006-838-530 » 微信小程序image图片自适应宽度比例显示的方法
分享到: 更多 (0)
E企盈小程序直播营销卖货系统
E企盈直播平台营销卖货系统

评论 抢沙发

E企盈小程序开发

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏