微信小程序图片自适应宽高:widthFix与bindload方案详解

简介:微信小程序动态设置图片大小的方法,是一份面向小程序开发者的实用PDF文档,聚焦商品详情页等场景下图片按原图比例自适应显示的需求。文档对image组件的src、mode、bindload等核心属性做了说明,并给出两种可落地的实现:一是将mode设为widthFix后配合固定rpx宽度(如730rpx),让高度随宽度自动变化;二是利用bindload事件获取图片真实宽高,在回调中计算宽高比,再通过data-index和setData动态更新每张图片的宽高样式。两种方式都配有示例代码,完整覆盖从事件绑定到数据更新的关键流程,能有效避免图片变形、留白或加载后跳动的问题,也解释了rpx响应式单位在不同屏幕下的适配原理。资源共包含1个PDF文件,大小仅51KB,便于按需阅读和离线参考;目前已有4134人参与学习下载,适合有一定小程序基础、工作中需要优化图片展示效果的前端开发者快速查阅。

1. 图片在小程序里为什么不能老老实实按比例显示

做过商品详情页的人应该都有印象: <image> 组件在不做任何处理的时候,默认宽度是 300px、高度是 225px,图片会直接压扁或拉伸成这个固定尺寸,完全不管原图是横图还是长图。这个问题在公众号素材页、商品相册、用户头像列表里都会遇到,尤其是在详情页里插入多张宽高比不一致的图片时,视觉上会非常突兀。要解决“按原图比例撑满屏幕宽度”这个需求,微信小程序提供了两条路:一条是只用 mode="widthFix" 配合 rpx 让系统自动算高度,另一条是用 bindload 拿到原图尺寸后在 JS 里手动算宽高再写回内联样式。前者简单,但控制粒度粗;后者灵活,能精确控制。这篇就围绕这两种做法展开,把参数、边界和实际项目里的坑一次说清。

2. image 组件属性与 widthFix 模式的适配边界

2.1 image 属性与 bindload 事件对象能拿到什么

先看官方给出的四个核心属性: src 、 mode 、 binderror 、 bindload 。 src 是图片地址,没什么好说的; mode 决定图片在组件盒子里的裁剪和缩放方式,默认是 scaleToFill ,也就是把图片强制拉伸到组件的宽高,原图比例在多数情况下是保不住的; binderror 在图片加载失败时触发,事件对象里带 errMsg ; bindload 在图片加载完成后触发,事件对象里的 detail 带 height 和 width ,单位是 px,这两个值是原图的真实像素尺寸,不随屏幕缩放。

这里需要区分一个容易混淆的点: detail.width 是图片文件本身的宽度,不是图片在页面上渲染出来的宽度。也就是说,如果服务端返回的是一张 1200px 宽、800px 高的图,在 iPhone 15 上 bindload 拿到的依然是 { width: 1200, height: 800 } ,和手机屏幕宽度无关。我们做自适应计算的依据就是这两个原图尺寸。

binderror 和 bindload 的触发时机是:图片开始加载、加载完成或失败,各触发一次。这两个事件是 <image> 组件绑定的基础,后面写动态尺寸逻辑时, bindload 是核心入口。

2.2 rpx 与像素换算,widthFix 为什么会失真

rpx 是微信小程序的响应式单位,规定屏幕宽度为 750rpx。在 iPhone 6 上 1rpx 等于 0.5px,在 iPhone 6 Plus 上 1rpx 约等于 0.552px,在 Android 机型上则根据实际逻辑分辨率换算。所以给 <image> 设置 width: 730rpx ,在任意机型上都会占到屏幕宽度的 730/750,约 97.3%,左右各留约 10rpx 边距。

用 widthFix 的做法是:设置 mode="widthFix" ,再给组件一个固定 rpx 宽度,高度由组件根据原图宽高比自动计算。这里的原图宽高比是从图片文件本身读出来的,不会受 CSS 影响,所以理论上不会失真。但有一个边界要注意: widthFix 计算出的高度是图片实际渲染高度的近似值,渲染过程中存在一次从原图尺寸到显示尺寸的等比缩放计算,如果原图非常大(比如 8000px 宽的全景图),在部分低端 Android 机型上会出现先显示默认高度、再跳变到真实高度的情况,这就是有时看起来“失真”或“跳动”的来源,不是算法错了,而是渲染时序问题。

2.3 常用 mode 对比

下表列出实际项目里用得最多的几种 mode ,方便按场景选型。

mode 行为 适用场景
scaleToFill 拉伸填满组件宽高,不保持比例 固定尺寸头像、横幅
aspectFit 保持比例完整显示,可能有留白 图片预览、首图加载
aspectFill 保持比例并填满,超出部分裁剪 轮播图、卡片封面
widthFix 宽度固定,高度按原图比例自动变化 详情页长图、商品图片

aspectFill 会裁剪, aspectFit 会留白, scaleToFill 会变形。 widthFix 是唯一一个“宽度由你定、高度自适应”的模式,适合详情页这种宽度固定、高度不定的场景。但 widthFix 不能对高度做二次限制,比如你希望图片最大高度不超过某个值、超出部分裁剪或省略,它做不到,这时就得用 bindload 手动算。

3. 用 bindload 动态设置图片宽高的完整链路

3.1 列表场景下的代码结构

实际开发中,商品详情页的照片往往是一个数组,由后端接口返回,图片数量不定、每张宽高比也不一样。对这种列表,常见的做法是:在 data 里维护一个 images 对象,以图片在数组中的下标为 key,保存计算后的宽高; <image> 的内联样式从 images[index] 里取宽高值。WXML 代码如下:

<view class="detail-list">
  <image
    wx:for="{{ photoList }}"
    wx:key="index"
    src="{{ item }}"
    data-index="{{ index }}"
    bindload="imageLoad"
    style="width: {{ images[index].width }}rpx; height: {{ images[index].height }}rpx;"
  ></image>
</view>

对应的 JS 逻辑:

Page({
  data: {
    photoList: [],   // 由接口返回的图片地址数组
    images: {}       // 以 index 为 key,保存每张图片的渲染宽高
  },

  imageLoad: function(e) {
    const width = e.detail.width;      // 原图宽度,单位 px
    const height = e.detail.height;    // 原图高度,单位 px
    const ratio = width / height;      // 原图宽高比,大于1为横图,小于1为竖图
    const viewWidth = 718;             // 设置图片显示宽度为 718rpx
    const viewHeight = Math.round(viewWidth / ratio);  // 按比例算出高度

    const index = e.target.dataset.index;
    const images = this.data.images;
    images[index] = {
      width: viewWidth,
      height: viewHeight
    };

    this.setData({
      images: images
    });
  }
});

这段代码的核心逻辑是:从 bindload 的事件对象里取出原图宽高,计算出宽高比 ratio ,再把固定的显示宽度 718rpx 除以 ratio ,得到显示高度。 718rpx 是在 750rpx 屏宽基础上预留左右各 16rpx 边距得出的值,你也可以改成 750 或 690,取决于页面设计。

3.2 参数为什么这样设

e.detail.width 和 e.detail.height 的单位是 px,而 style 里用的是 rpx,这里没有做单位换算,原因是宽高比是一个无量纲的数, viewWidth 用 rpx 作为单位后, viewWidth / ratio 计算出的高度单位自然也是 rpx。只要 viewWidth 用 rpx,结果就是 rpx,不需要关心当前设备的像素比。这是这个方案最方便的地方,也是新手容易多想的地方。

e.target.dataset.index 是从 data-index="{{ index }}" 取出来的下标值,注意 dataset 里的值会被转换成字符串,但字符串 "0" 和 "1" 用作对象 key 时效果等同于数字下标,所以直接用即可。这里不建议用循环变量本身作为 key,因为在异步回调里,循环变量可能已经指向最后一个值,拿不到当前项。

3.3 setData 的更新策略

this.data.images 在第一次计算时是一个空对象,通过 images[index] = { ... } 动态增加 key,再整体 setData 回去。这样的写法在图片量少的时候没有问题,但如果一个页面里有几十张图,每次 bindload 都触发一次 setData ,会频繁引起视图层更新,在低端机上可能造成滚动卡顿。

我一般会做一个简单优化:先给 images 里的每个 index 初始化一个默认宽高值(比如宽度 718rpx、高度 400rpx),图片加载完成后再精准更新对应项。这样至少能保证图片加载前占位高度正确,减少页面跳动:

Page({
  data: {
    photoList: [],
    images: {}
  },

  onLoad: function() {
    const photoList = this.data.photoList;
    const images = {};
    for (let i = 0; i < photoList.length; i++) {
      images[i] = { width: 718, height: 400 };  // 默认占位宽高
    }
    this.setData({ images: images });
  }
});

这样做的好处是:图片尚未加载完成时,布局已经预留了位置,不会因为 images[index] 为空导致内联样式出现 width: rpx; height: rpx; 这种非法值。强调一下, images[index] 为 undefined 时, style 里的表达式会变成空串,图片会回退到默认尺寸,这恰恰是动态设置方案最常见的坑之一。

4. 动态尺寸实战中的踩坑与排错

4.1 images[index] 为 undefined 时的并发问题

当 photoList 里的图片同时在网络请求中, bindload 回调的触发顺序不一定和数组下标一致。比如第二张图先加载完,执行了 images[1] = {...} ,第一张图后加载完再执行 images[0] = {...} 。如果在回调里直接读取 this.data.images[index] ,然后基于这个值去修改,会存在读改写竞态。上面代码里是先整体 this.setData({ images: images }) ,由于 JS 是单线程的, this.data.images 在每次回调执行时已经是上次更新后的结果,所以不存在这个并发问题。但如果你在回调里用 this.setData({ ['images[' + index + ']']: value }) 这种路径写法,就需要小心:多次 setData 之间如果只改一个 key,其他 key 的旧值依然保留,这也是一种可用方案,但要注意 images 对象必须已经初始化。

4.2 bindload 不重复触发的陷阱

bindload 只在图片 src 变化且重新加载时触发。如果 src 不变, bindload 不会再次触发。这在页面下拉刷新、tab 切换返回时会带来问题:图片已经加载过,数据没变,重新进入页面时, images 里的数据可能已经被重置,但图片没有重新触发 bindload ,结果就是图片显示默认尺寸。

我的处理方式是在 onShow 或数据重置时,手动初始化默认宽高,或者直接把 images 的计算结果存到全局缓存里,下次进入时先读缓存再渲染:

const cachedImages = wx.getStorageSync('product_images');
if (cachedImages) {
  this.setData({ images: cachedImages });
}

4.3 高度突变引起的滚动跳动

这是商品详情页最容易出现的体验问题。页面结构通常是:外层 scroll-view 或页面滚动,内部图片从默认高度跳变到计算高度。如果占位高度和最终高度差得远,滚动位置会被顶开,视觉上表现为内容跳动。

一个有效的缓解办法是给 <image> 设置一个与最终高度接近的初始占位高度。比如详情页图片宽度基本在 700rpx 左右,竖图居多,那初始高度可以预估为 900rpx,不要用 0 或一个小数值。另一个办法是给容器加 min-height ,即使计算还未完成,容器也不会塌陷。

如果对渲染速度有要求,还可以在 imageLoad 里做一层防抖,合并短时间内的多次 setData :

let timer = null;
imageLoad: function(e) {
  const self = this;
  if (timer) {
    clearTimeout(timer);
    timer = null;
  }
  timer = setTimeout(function() {
    self.processImageSize(e);
  }, 50);
}

这种策略把 50ms 内触发的多次回调合并成一次视图更新,能明显减少低端机上的卡顿感。注意防抖会带来部分图片尺寸更新延迟,所以初始占位高度必须合理,否则延迟期间用户会看到不对的布局。

4.4 尺寸计算在边界条件的验证

图片加载失败时, bindload 不会触发,此时 images[index] 一直停留在占位状态。我通常会再补一个 binderror 处理:

imageError: function(e) {
  const index = e.target.dataset.index;
  this.setData({
    ['images[' + index + ']']: { width: 718, height: 718 }
  });
}

这样即使图片挂了,页面上也会有一个正方形的灰色占位块,不会影响整体布局。注意 binderror 的事件对象里没有 detail.width ,所以只能设置固定值。

5. 两种方案的选型边界与验证技巧

5.1 什么时候用 widthFix,什么时候用 bindload

widthFix 适合纯展示、不需要精确控制高度的场景,典型如公众号文章截图、用户上传的普通照片。只需要一行 mode="widthFix" 加固定宽度类名,代码量最少,也没有 JS 回调。它的局限在于:高度完全交由系统计算,你无法在渲染前知道具体高度,也就无法做占位优化;同时它要求图片的显示宽度是固定的,如果宽度是动态计算出来的, widthFix 就没有办法配合。

bindload 适合需要提前知道尺寸、或需要限制高度区间的场景。比如详情页的图片最大高度限制为 2000rpx,超出部分用 overflow: hidden 裁剪;或者图片分两列展示,每列宽度不同,需要分别计算。这时手动计算宽高是唯一方案。判断标准很简单:只需要宽度自适应,用 widthFix ;需要知道最终高度值、或要对高度做二次处理,用 bindload 。

5.2 一个验证尺寸计算是否正确的办法

调试时可以在 bindload 回调里把计算前后的数据打印出来,对比原图宽高比和渲染宽高比是否一致:

imageLoad: function(e) {
  const width = e.detail.width;
  const height = e.detail.height;
  const ratio = width / height;
  const viewWidth = 718;
  const viewHeight = Math.round(viewWidth / ratio);
  console.log('原图比例', ratio.toFixed(2));
  console.log('渲染比例', (viewWidth / viewHeight).toFixed(2));
}

原图比例和渲染比例在小数点后两位内一致,说明计算没有问题。如果差的多了,先检查 Math.round 的舍入影响,再检查 data-index 是否传错。更直观的办法是在开发者工具的 Wxml 面板里点开对应 image 节点,看它的 style 里 width 和 height 是否符合预期,然后切换不同的机型模拟,确认 rpx 换算没有导致宽高溢出屏幕。

还有一个经验值: bindload 方案适合图片数量在 20 张以内的页面,超过这个数量建议改为后端直接返回图片宽高,前端不用等 bindload ,首次渲染更快。接口字段一般是 width 和 height ,前端拿到后先按屏幕宽度算出高度再渲染,流程上与 bindload 完全一致,只是数据来源从本地事件变成了远程接口。

本文还有配套的精品资源,点击获取 menu-r.4af5f7ec.gif

微信小程序图片自适应:widthFix与bindload方案对比 在微信小程序开发中,图片尺寸自适应是常见需求,尤其商品详情页需处理横竖图混排。核心原理是通过动态计算宽高比实现等比缩放,避免图片拉伸变形。技术价值在于提升布局稳定性和用户体验,减少滚动抖动。应用场景包括电商详情页、内容流和活动页。针对小程序image组件的widthFix和bindload两种方案,分析其工作原理、适用边界和性能优化,帮助开发者根据图片数量和布局要求选择合适方法,解决图片忽大忽小问题。 阅读详情

相关推荐

微信小程序图片自适应实战:从widthFix到bindload动态计算

移动端开发中,图片自适应是绕不开的经典问题。微信小程序的<image>组件默认有固定宽高,直接使用容易造成图片拉伸变形或被裁切。理解组件尺寸机制是解决问题的前提,而<image>的mode属性和rpx单位则提供了基础适配能力。其中,mode="widthFix"能通过固定宽度自动计算高度,适合配图、列表缩略图等简单场景;bindload回调则可以拿到图片真实宽高,结合rpx换算和setData动态设置样式,实现任意容器下的精确按比例展示。这项技术广泛应用于商品详情页、轮播图、用户头像等场景,能显著提升页面稳

weixin_29317963的博客 193

微信小程序图片自适应大小(炒鸡详细)

开发小程序图片是非常重要的部分 小程序开发想要提升用户的体验感图片是必不可少的部分,因此对图片的各种操作也是咱不可或缺的技能。 我遇到的坑 本来想放入一张好看的图片 <view class="one"> <image src="/images/1.png" ></image> </view> 原图 结果 因为我没有设置图像的宽高,然后系统就使用了image的默认宽高 height: 240px; width: 320px; 解决方法一

mycocoo的博客 1万+

机器学习【学校智慧食堂及其应用】

本文主要介绍机器学习【智慧食堂及其应用】

qq_201729558 2571

微信小程序——image图片组件宽高自适应方法(可详细了!)

微信小程序——images图片组件宽高自适应方法 前言: 第一次做小程序的时候使用了image图片组件,src引用一张图片后,给图片的样式设置了width:100%,发现图片变形了~~~,我想要的效果是,图片在父级中的宽是占据父级元素的100%,高度自动适应,按照html中的图片在浏览器中默认显示逻辑应该是,图片宽度为图片的100%宽度像素,高度自适应,所以这种显示逻辑并不会造成图片变形,思虑片刻...

朕的博客 4万+

基于OpenAI Agents构建多智能体工作流:从原理到实战

多智能体系统(Multi-Agent System)是人工智能领域的重要分支,它通过多个智能体(Agent)的协作与交互,解决单一智能体难以处理的复杂任务。其核心原理在于将任务分解、分配与协调,每个智能体具备特定能力,通过通信机制实现信息共享与决策协同。在工程实践中,多智能体框架的价值在于提升任务处理效率、增强系统鲁棒性,并支持模块化开发。典型的应用场景包括自动化工作流编排、复杂问题求解以及人机协同交互。本文以OpenAI Agents SDK为例,深入探讨如何利用其提供的智能体(Agent)、会话(Ses

weixin_28725959的博客 603

QGC二次开发实战指南(一):从零构建自定义地面站界面

本文详细介绍了QGC二次开发实战指南,从零开始构建自定义地面站界面。通过QT和QML技术结合MAVLINK协议,开发者可以打造适合特定业务场景的无人机监控系统,提升操作效率与用户体验。文章包含环境搭建、界面设计、数据绑定等完整开发流程,是QGC二次开发的实用教程。

weixin_28693683的博客 496

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

转摘来自于: http://www.qianduan8.com/1005.html 我们都知道微信小程序的组件image是用来显示图片的,它有一下几个属性:1、src 图片资源地址2、mode 图片裁剪、缩放的模式3、binderror 当错误发生时,发布到 AppService 的事件名,事件对象event.detail = {err...

weixin_41017246的博客 2万+

保姆级教程:用PROGRAM_FTDI搞定Xilinx FPGA的JTAG调试器(基于FT232/FT2232/FT4232)

本文详细介绍了如何使用FT232/FT2232/FT4232系列芯片通过PROGRAM_FTDI工具配置Xilinx FPGA的JTAG调试器。从芯片选型、驱动安装到固件烧写和Vivado验证,提供了完整的实操指南和避坑要点,帮助开发者低成本实现高效调试。

weixin_29271053的博客 2153

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

我们都知道微信小程序的组件image是用来显示图片的,它有一下几个属性:1、src 图片资源地址2、mode 图片裁剪、缩放的模式3、binderror 当错误发生时,发布到 AppService 的事件名,事件对象event.detail = {errMsg: ‘something wrong’}4、bindload当图片载入完毕时,发布到 A...

weixin_39573981的博客 3015

MobilenetV1、V2、V3系列详解

Mobilenet系列模型作为当前主流的端侧轻量级模型被广泛应用,很多算法都会使用其作为backbone提取特征,这一章对Mobilenet系列模型V1,V2,V3做一个总结。

turned的博客 1万+

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的生活垃圾检测与分类系统(Python+PySide6界面+训练代码)

随着城市化进程的加速和人口增长,生活垃圾管理已成为现代城市面临的重要挑战。传统的垃圾处理方法效率低下且成本高昂,急需智能化解决方案。本文详细介绍了基于YOLO系列算法(特别是YOLOv8)的智能生活垃圾检测与分类系统,该系统能够实时识别和分类多种生活垃圾,为智能垃圾处理和回收提供技术支持。系统包含完整的数据集构建、模型训练、评估和可视化界面,并提供了完整的实现代码。

YOLO 117

【微信小程序】图片自适应屏幕

微信小程序媒体组件image:支持JPG、PNG、GIF、SVG、WEBP等格式。由于手机种类繁多,同一张图片在不同的手机上展示的宽高有时会出现压缩或拉伸的情况。虽然image组件,提供了mode属性适应图片展示的处理,但效果并不尽如人意。 mode 的合法值 值 说明 最低版本 scaleToFill 缩放模式,不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素 aspectFit 缩放模式,保持纵横比缩放图片,使图片的长边能完全显示出来。..

会写代码的饭桶 9474

【实战圣经】YOLOv8-pose姿态估计模型从训练到RK3588部署:让边缘端骨骼识别速度突破60FPS

本教程从“模型训练-转换-边缘部署”全链路拆解了YOLOv8-pose姿态估计方案在RK3588上的落地过程,每一步都经过实战验证。无论是智能健身的动作实时纠正,还是工业设备的关键部件姿态检测,这套流程都能让你以最低成本实现高精度、高实时性的姿态估计应用。如果你在实践中遇到模型转换报错、部署性能不达标等问题,可聚焦某一环节深入优化——毕竟,让AI在边缘端“精准捕捉每一个关键点”,才是技术驱动场景创新的核心。

m0_71589036的博客 251

微信小程序图片自适应宽高比例显示解决方法

微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 正文: 解决方案一:写固定宽度,然后使用 image 组件中 mode 属性的 widthFix ; 先看效果图: 实现代码: <image class='my_img' mode='widthFix' src='{{img}}'></image> .my_im...

a_靖的博客 2万+

14、方法论 - 自顶向下与自底向上的结合

本文探讨了如何将自顶向下的规范驱动方法与自底向上的组件构建方法相结合,以形成更加全面的编程理论。通过引入代数法则,简化逻辑关系、提高代码可读性并支持形式化验证,结合实际案例(如智能家居控制系统)展示了如何在设计和实现阶段确保系统的正确性和可靠性。文章还讨论了工具支持的重要性,并提出了未来发展的方向。

lstm7chronicler的博客 173

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

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

我们都知道微信小程序的组件image是用来显示图片的,它有一下几个属性: 1、src 图片资源地址 2、mode 图片裁剪、缩放的模式 3、binderror 当错误发生时,发布到 AppService 的事件名,事件对象event.detail = {errMsg: ‘something wrong’} 4、bindload 当图片载入完毕时,发布到 AppService 的事件名,事件对象event.detail = {height:’图片高度px’, width:’图片宽度px’} 但是image有默

kiku 4722

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

微信小程序图片固定宽度,高度自适应处理方法及相关API介绍

微信小程序图片固定宽度,高度自适应处理方法及相关API介绍 1、背景 在我们写js代码时,控制图片固定宽度固定,使得高度自适应缩小,是非常简单的,但在微信小程序中不了解微信小程中组件image相关的属性是有些麻烦的,因为微信小程序中image本身会自带宽度和高度的(尽管可以被覆盖) 而正是这些已存在的值,让我们在不熟悉image属性的情况下,处理很是麻烦。 2、处理方法 在image属性值中有个mode,它有诸多值,其中缩放模式,和裁剪模式,首先我们固定图片的宽度,然后我们要用到缩放模式值:widthFi

weixin_45315794的博客 4329

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

微信小程序image组件图片设置最大宽度 宽高自适应

问题描述:在使用微信小程序image组件的时候,在不确定图片宽高情况下 想给一个最大宽度让图片自适应,按比例,image的widthfiex和heightFiex并不能满足(只指定最大宽/高并不会生效)问题解决:使用bindload获取图片信息获取宽高再判断是否超过最大值。

weixin_48495574的博客 1698

微信小程序-图片等比例显示不变形

我的个人博客:https://okven.github.io/ mode 属性 使用mode属性 属性值设置为widthFix :宽度不变,高度自动变化,保持原图宽高比不变。 &lt;image class='manImg' mode='widthFix' style="width:100%;" src='{{item.starItem.imageUrl}}' /&gt; bindLoad...

一个天秤座的程序猿???? 6747

微信小程序-图片自适应

image组件 使用使用mode:widthFix,宽度固定,高度自适应 <image class="nav_img" mode="widthFix" src="{{img}}"></image> 注意,在初次进入页面时会有高度拉伸情况,使用样式display:block可解决 (二).使用bindload绑定函数动态自适应。 <image src="../uploads/2.jpg" bindload="imageLoad" style="width:{

帆酱的博客 2624

微信小程序中图片自适应(高度、宽度自适应)

1、 `<image class="rich_img" src="{{item}}" bindload="imageLoad" style="height:{{switerimgHeight}}rpx" mode="widthFix" bindtap='previewImg' data-effect_pic='{{richImgLists}}' data-src='{{item}}' id...

刺客-Andy 的博客 5928

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

微信小程序的组件image是用来显示图片的,它有一下几个属性: 1、src 图片资源地址2、mode 图片裁剪、缩放的模式3、binderror 当错误发生时,发布到 AppService 的事件名,事件对象event.detail = {errMsg: ‘something wrong’}4、bindload 当图片载入完毕时,发布到...

小草莓的博客 8375
上一篇: 中小企业口碑营销:低成本获客与信任构建策略
下一篇: PTL电子标签与WMS系统集成:库位追溯管理实战解析
BIG-HO
博客等级 码龄7年 2507粉丝 5852原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值