如何获取 img 元素的动态高度?

How to get the dynamic height of an img element?

我正在更改 imgsrc,但我加载的图像并不总是具有相同的高度。我想获取图像的高度,以便我可以使用 jQuery.

正确调整大小和位置

如果 img 元素的高度设置为 auto 且其父元素高度也设置为 auto,我如何获取该元素的高度?

尝试 .parentNode 对我没有用。 .outerHeight().height() 返回 0。还有哪些其他解决方案?

图像是异步加载的。不能立即查询它的高度,否则返回的高度永远为0。需要等到图片加载完毕再查询它的高度。一个例子:

let img = document.querySelector("img");
img.addEventListener("load", function() {
 console.log(this.offsetHeight);
});
<img src="https://source.unsplash.com/random">