这篇“vue+uniapp瀑布流布局怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue+uniapp瀑布流布局怎么实现”文章吧。通过动态计算哪一列高度最低,就把图片放置该列下显示,直至所有图片分列完毕计算哪一列高度最低具体实现过程又分2种方式:方式1:通过计算每一列每张图片渲染后高度进行累加就是该列的高度,记录每列累加高度比较大小方式2:直接通过图片父级元素高度(列div)来判断哪一列最低区别:方式1无需等待图片真实渲染完成在比较高度,方式2需要等待图片真实渲染完成在获取高度以左右免费云主机域名2列为例1.方式1(图片高度累加比较法)2.方式2(父元素高度比较法)每次放入图片需要等待渲染后再重新计算父元素高度,关键代码 await this.$nextTick()由于uniapp获取元素高度和vue有所区别,造成实现瀑布流方式也需要调整。我们知道uniapp不能通过this.$ref.xx.clientHeight获取元素高度,而需要通过uni.createSelectorQuery().in(this).select(‘.xxxx’).boundingClientRect().exec()来获取,且经过实测当图片动态加入列后通过该api计算出父元素真实高度是不准确的,所以uniapp瀑布流布局实现方式只能通过方法1(也即图片高度累加法)进行实现,除了上面方法1通过img.onload来获取图片高度外,uniapp还提供uni.getImageInfo方法来更方便获取图片高度。代码实现多列实现和2列一样,动态生成每列图片数据和记录每列高度代码实现以最简单的父元素高度比较法(方式2)为例实现,图片高度累加比较法(方式1)自行类比实现以上就是关于“vue+uniapp瀑布流布局怎么实现”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注百云主机行业资讯频道。
这篇文章主要讲解了“HTML中的img标签属性怎么使免费云主机域名用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“HTML中的img标签属性怎么使用”吧!HTML 标签用于将图像放入 HTML 文档中。这将产生…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。