我的页面分为多个标签,对应隐藏的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)。这是故意的吗?有没有办法解决这个问题?
答案 0 :(得分:1)
我认为这是因为图片没有加载。所以,尝试这样的事情。
$('#myimg').on("load",function(){
var imgHeight = img.get(0).height;
var imgWidth = img.get(0).width;
})