我有一个图像被包裹在几个DIV元素中

<div id="wrapper">
...
<img src="myphoto.png" height="400px" width="500px>
</div>

我使用jQuery来访问我使用的高度或宽度
jQuery(img).attr('height');


jQuery(img)[0].height;

不幸的是,当wrapping DIV'display'属性更改时,这些值设置为0
例如,如果我这样做了
$('#wrapper').hide()
then
jQuery(img)[0].height = 0;

属性也一样。
任何解决这个问题的方法,显示DIV,获取值并再次隐藏它都能解决这个问题,但是我不能猜测包装DIV的数量(它们的行为也会改变)。
谢谢
编辑:谢谢你的回答。不过,我忘了说我不控制DIV隐藏和样式。我的脚本可以播放图像,并且可以集成到任何页面中,因此用户是隐藏/显示/更改值的人。

最佳答案

使用.css()获取存储值,如下所示:

jQuery('img').css('height');

我知道这听起来有点奇怪,but before you dismiss it, try it:)

09-25 16:54
查看更多