如何获得一些元素的实际宽度/高度加载后,其宽度/高度最初设置百分比
How to get actual width/height of some element after loading whose width/height originally set by PERCENTAGE?
我有一个iframe,其内容指向一个HTML文档。
在那个HTML文档中,有一个EMBED元素指向一个PDF文档。这个嵌入最初是用PERCENTAGE设置宽度和高度的(比如:width: 100%; height: 100%
)。
我的问题是:
iframe加载后,我如何检索实际,绝对宽度和高度(在任何单位px, pt, em等)的嵌入元素。
我一直在尝试所有可能的js属性(宽度,高度,样式:clientWidth, clienttheight, offsetWidth, offsetHeight…)和jQuery以及(如outerWidth, outerHeight等),但似乎没有希望。
这应该会返回您需要的内容:
document.getElementById("id").clientHeight
document.getElementById("id").clientWidth
id是EMBED元素的唯一id。
查看更多信息:
https://developer.mozilla.org/en/DOM element.clientHeight
https://developer.mozilla.org/en/DOM element.clientWidth
http://jsfiddle.net/purmou/9XXwf/2/
使用jQuery的width()
和height()
。目前,它查找对象的总宽度/高度,包括填充,边框,边距等。如果您想查找元素本身的宽度和高度,不包括边框等,请将var width = this.offsetWidth;
替换为var width = $(this).width();
,将var height = this.offsetHeight;
替换为var height = $(this).height();
。
你应该使用。offsetwidth和。offsetheight属性。注意!它们属于元素,而不是element.style.
var width = document.getElementById('foo').offsetWidth;
它适用于所有现代浏览器。但是要小心!如果最近对元素做了某些DOM修改,offsetWidth/offsetHeight可以返回0。在修改元素之后,可能需要在setTimeout调用中调用这段代码。也许这就是你的问题?
- 如果宽度是百分比,如何设置以px为单位的图像高度
- 当我使用高度百分比时,谷歌地图javascript api不会显示
- 根据元素高度和宽度的百分比变化增加或减少字体大小
- 灯箱类型的东西,使图像成为浏览器高度的百分比
- 制作jQuery高度百分比动画
- 固定位置高度比浏览器窗口大百分比
- .height() 以百分比返回高度,如何以像素为单位获取它
- jquery .height() 在媒体查询中使用百分比高度时不起作用
- 文档高度占原始高度的百分比
- 确定 DIV 的高度以百分比而不是像素设置
- 图像高度与图像宽度成比例,但图像宽度以父项的百分比为单位
- IE8最大高度百分比
- extJs(设置高度和宽度)(以百分比表示)
- 在JavaScript中将宽度和高度设置为百分比
- 相对百分比高度显示不正确
- <img>高度CSS在旋转木马中使用百分比调整大小不正确
- Webkit似乎有百分比宽度/高度的问题
- Javascript滚动高度百分比数学
- 设置元素的宽度(或高度)为较高祖先元素的百分比
- 如何获得一些元素的实际宽度/高度加载后,其宽度/高度最初设置百分比