怎么在微信小程序中获取图片的宽度与高度

这篇文章给大家介绍怎么在微信小程序中获取图片的宽度与高度,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

重点: 在图片加载完成后获取对应的图片信息.

经查小程序开发文档后发现, 有提供加载成功的回调, 如下:

怎么在微信小程序中获取图片的宽度与高度

演示Demo如下:

// wxml
<view  >
 <image src="https://sf3-ttcdn-tos.pstatp.com/img/mosaic-legacy/3796/2975850990~300x300.image" bindload="loadSuccess" ></image>
</view>

//js
Page({
 data: {
 imageHeight: 0,
 imageWidth: 0
 },
 loadSuccess(e){
 const { detail: {width, height} } = e
 this.setData({
  imageWidth: width,
  imageHeight:height
 })
 }
})

先来看看效果:

怎么在微信小程序中获取图片的宽度与高度

思考个问题:  假设我有100张图片都需要做自适应, 那么是不是多了很多繁琐的setData(), 同时也会导致性能问题.

进阶方案

经朋友提醒后发现, 小程序image还有个属性叫做mode, 可以去设置图片的裁剪&缩放等形式.

怎么在微信小程序中获取图片的宽度与高度

关于mode属性的取值可选项如下图:

怎么在微信小程序中获取图片的宽度与高度

话不多说, 我们看看实际效果如何:

// 750x110的图片
<view  >
 <image src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ba1f75f0d29c40759b43ef910dacb4e7~tplv-k3u1fbpfcp-watermark.image" mode="widthFix"></image>
</view>

// 750x480的图片
<view  >
 <image src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ba1f75f0d29c40759b43ef910dacb4e7~tplv-k3u1fbpfcp-watermark.image" mode="widthFix"></image>
</view>

看看750x110的效果图:

怎么在微信小程序中获取图片的宽度与高度

再看看750x480的效果图:

怎么在微信小程序中获取图片的宽度与高度

关于怎么在微信小程序中获取图片的宽度与高度就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。