关于uniapp中长图片父盒子宽度自适应的需求实现

本文介绍了在uni-app中实现长图片父盒子宽度自适应的方法,通过获取图片加载后的实际宽高,结合屏幕尺寸进行等比例缩放计算图片宽度。在遇到uni-image默认宽度问题时,使用'heightFix'模式解决高度自适应,但需手动计算图片宽度相加以设置父盒子宽度。通过监听窗口resize事件,动态更新父盒子宽度。
摘要由CSDN通过智能技术生成

先说结论:

绑定图片加载函数获得每张图片的宽高,然后通过屏幕大小和图片大小等比例缩放,计算得出每张图片的宽度:每张图所需宽度= 图片真实宽度/(图片真实高度/屏幕高度)

父盒子把每张图宽度相加,然后监听窗口的resize,重新赋值给父盒子宽度就行。

(代码直接看下面第三点)

1、需求

我要实现不同长度的图片拼接成一个连续的长图,就是高度不变,可以横向滚动的图片。

2、实现

首先我以为设定了图片height:100vh就好了,然后图片宽度可以自己进行自适应。然而,运行后的uni-image的css自带了320px宽度属性。导致我每个图片渲染出来都是一样宽的。

//imgArr是图片的地址数组
<image v-for="(item,index) in imgArr" :src="item" :key="index"></image>

假如要改变图片宽度只能自己给定宽度才行,做不到自适应。

然后我在代码中将image标签的mode模式改成“heightFix”,实现图片高度自适应,每张图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值