你看看你的 imgHeight 在无效的时候是不是 0?感觉像是执行 js 的时候图片没加载出来没高度。 图片加载非阻塞,整个执行过程需要在 img 的 onload 之后(或者window.onload)再执行。
刷新以后才显示 我猜测过程可能是这样的: 第一次访问页面,获取宽高(但是图片还没有加载出来,所以失败了。) 然后图片加载完成了 第二次访问页面,图片直接读取的缓存 获取宽高正确 所以说,你的获取offsetHeight要在确定图片已经加载完成后再进行。
你看看你的 imgHeight 在无效的时候是不是 0?感觉像是执行 js 的时候图片没加载出来没高度。
图片加载非阻塞,整个执行过程需要在 img 的 onload 之后(或者window.onload)再执行。