为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

互换的青春 2019-03-22 15:19:10
js先获取了一个图片的高度,然后赋值给一个div的高,为什么刷新后才显示出了,怎么解决,求路过前辈指点,谢谢!
查看完整描述

3 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

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

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


查看完整回答
反对 回复 2019-04-01
?
慕后森

TA贡献1802条经验 获得超5个赞

刷新以后才显示

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

  1. 第一次访问页面,获取宽高(但是图片还没有加载出来,所以失败了。)

  2. 然后图片加载完成了

  3. 第二次访问页面,图片直接读取的缓存

  4. 获取宽高正确

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


查看完整回答
反对 回复 2019-04-01
  • 3 回答
  • 0 关注
  • 685 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信