ja获取一个图片的高度,再赋值给div,怎么刷新一次才显现?

发布于 2022-09-07 07:35:48 字数 148 浏览 10 评论 0

clipboard.png
js先获取了一个图片的高度,然后赋值给一个div的高,为什么刷新后才显示出了,怎么解决,求路过前辈指点,谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

萌化 2022-09-14 07:35:48

你看看你的 imgHeight 在无效的时候是不是 0?感觉像是执行 js 的时候图片没加载出来没高度。

图片加载非阻塞,整个执行过程需要在 img 的 onload 之后(或者window.onload)再执行。

掐死时间 2022-09-14 07:35:48

刷新以后才显示

我猜测过程可能是这样的:

  1. 第一次访问页面,获取宽高(但是图片还没有加载出来,所以失败了。)
  2. 然后图片加载完成了
  3. 第二次访问页面,图片直接读取的缓存
  4. 获取宽高正确

所以说,你的获取offsetHeight要在确定图片已经加载完成后再进行。

国粹 2022-09-14 07:35:48

clipboard.png

我js在页面下面呀,小弟菜鸟一枚 麻烦前辈再帮忙看一眼

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文