在显示器的IE中获取图像高度:无图像?

joh*_*ohn 5 javascript css internet-explorer-7

我有设置的图像display:none.我使用javascript(document.getElementById('elem').height)来获取这些图像的高度/宽度.

这适用于其他浏览器,但IE报告高度为0(可能是因为它的显示设置为无 - 因为当我删除display:none时,正确报告高度).我尝试将图像包装在div中并将div的显示设置为none而不是图像 - 但这也不起作用.

这个典型的工作是什么?

ken*_*bec 9

如果您对图像本身的大小感兴趣,除了在html中设置的任何样式或属性之外,您可以使用相同的src测量新图像.

如果您只测试包含的图像,它不会向文档的html或样式表添加任何内容,甚至不会添加到document.images.length.

var  im=new Image();
im.src=element.src;
return [im.src,  im.width, im.height];
Run Code Online (Sandbox Code Playgroud)


小智 1

尝试这个:

  1. 将其放置在屏幕外
  2. 将其设置为显示:块
  3. 得到它的高度
  4. 将其设置回显示:无
  5. 将其重新定位回原来的位置