当前位置: 首页 > news >正文

uniapp使用createSelectorQuery,boundingClientRect获取宽度和高度不准确的可用的解决方案

场景展示:

uniapp使用createSelectorQuery,boundingClientRect获取宽度和高度不准确的可用的解决方案,正常来说,使用下面的代码是可以正确获得宽高的,但是里面含有图片,在图片没有加载完的情况下,我们可以想像一下,计算出来的结果肯定是不对的。而且我也在网上找了不少的解决方案。大多数是说有padding和margin,再使用getComputedStyle这样的函数。显得都太复杂,经过摸索实验,最终的解决方案比较简单:

  const query = uni.createSelectorQuery().in(this);query.select("#box-bottom").boundingClientRect();query.select("#box-title").boundingClientRect();query.exec(function (res) {var ttheight = 0;for (var i in res) {ttheight += res[i].height;}that.midbox.height = lsktl.ci.windowHeight - ttheight-30;});

如下图,我想要计算box-title和box-bottom的高度,然后再确认中心的可滚动部分,其中头部和底部都有id="box-title"和id="box-bottom"的id的两个盒子。

就是给要计算的宽高的盒子加上:key="key",这样的话,就可以正确得到宽和高了。

代码如下:

  that.kklist.bottom=lsktl.rndstr();that.kklist.title=lsktl.rndstr();that.$nextTick(function () {const query = uni.createSelectorQuery().in(this);query.select("#box-bottom").boundingClientRect();query.select("#box-title").boundingClientRect();query.exec(function (res) {var ttheight = 0;for (var i in res) {ttheight += res[i].height;}that.midbox.height = lsktl.ci.windowHeight - ttheight-30;});});

http://www.dtcms.com/a/138235.html

相关文章:

  • STM32 HAL库 内部传感器驱动实现
  • 写书的三驾马车
  • 回归,git 分支开发操作命令
  • ONLYOFFICE深度解锁系列.2-Excel 跨文件数据整合实战指南-可道云的另一个严重bug
  • Vscode --- LinuxPrereqs │远程主机可能不符合 glibc 和 libstdc++ Vs code 服务器的先决条件
  • STM32 串口中断接收方式笔记:HAL_UART_Receive_IT vs __HAL_UART_ENABLE_IT
  • 用GitHub Actions实现CI/CD
  • 【uniapp】uni.setClipboardData 方法失效 bug 解决方案
  • 阿里云OSS应对DDoS攻击策略
  • TDengine 存储引擎剖析:数据文件与索引设计(二)
  • 告别昂贵语音合成服务!用GPT-SoVITS生成你的个性化AI语音
  • 【eNSP实验】OSPF单区域配置
  • 高效培训,借助课程编辑器塑造卓越团队​
  • BH1750光照传感器---附代码
  • 2025年4月16日华为笔试第二题200分
  • js逆向分享
  • NAT、代理服务、内网穿透
  • AI 推理与训练优化的核心理论体系建构及关键技术分析框架
  • Leetcode - 周赛445
  • ServletRequestAttributeListener 的用法笔记250417
  • usb重定向qemu前端处理
  • Java排序算法百科全书:原理、实现与实战指南
  • 如何新建一个空分支(不继承 master 或任何提交)
  • SQL刷题记录贴
  • Nodemon vs. PM2:开发与生产环境的 Node.js 部署最佳实践
  • 【AI插件开发】Notepad++ AI插件开发实践:实现对话窗口功能
  • 多 Agent 协作怎么整:从谷歌A2A到多Agent交互方案实现
  • 【hive】Hive对数据库,对表的操作(一)
  • 第六节:React Hooks进阶篇-自定义Hook设计
  • 大模型时代下全场景数据消费平台的智能BI—Quick BI深度解析