我的页面分为多个选项卡,对应于隐藏的div。其中一个标签有图像,我需要在客户看到它时获得图像的高度。我一直在使用image.clientHeight
,$(image).height()
等,但当图像在页面上不可见时,这些都返回0。
我的问题是,有没有办法避免这种情况,即。在客户看到它之前获取图像的高度?
为了澄清,我正在寻找客户页面上显示的图像高度,而不是图像的原始高度。
编辑:这就是我的代码基本上是如何布局的:
<div id="page1">
<h1>Some landing page here</h1>
</div>
<div id="page2" style="display: none;">
<h1>Images</h1>
<img src="..."></img>
</div>
页面加载时,将显示page1,并隐藏所有其他页面。我知道所有关于检查图像何时加载,窗口加载等等,但$(image).height()
或其他所有变体都不起作用,除非图像对客户端可见(即显示了page2)。这是故意的吗?有没有办法解决?
我认为这是因为图像没有加载。所以,尝试这样的事情。
$('#myimg').on("load",function(){
var imgHeight = img.get(0).height;
var imgWidth = img.get(0).width;
})