Javascript - 简单地获取元素的高度

时间:2015-06-11 20:59:47

标签: javascript css

我知道这是一个重复,但我不能从其他一些答案得到它! 真的希望你能帮忙!

我只想获取元素的宽度,然后将其指定给同一元素的高度。

但我似乎无法通过宽度...... 我真的不知道为什么 - 只是得到并且“未定义”。

在元素添加到DOM之前,阅读有关js要求宽度的内容,但无论我在哪里放置“onload”,og放置js脚本,它似乎没有任何区别,我仍然可以将静态高度添加到同一个元素,但只能获得宽度!谢谢!

var width_ele = document.getElementsByClassName("image");
var width = width_ele[0].style.offsetWidth;

alert(width);

var ele = document.getElementsByClassName("image");
for (var i = 0; i < ele.length; i++) {
ele[i].style.height = 100 + "px"; // here I wanted the "100" to be the variable "width"...
}

http://jsfiddle.net/qL0hj4jc/10/

2 个答案:

答案 0 :(得分:4)

var width = width_ele[0].offsetHeight; // did you mean offsetWidth?

offsetHeight / offsetWidthelement itself的属性,而不是其样式表。

答案 1 :(得分:2)

我已更新您的代码。

您需要使用

var width = width_ele[0].offsetWidth;

这是更新的小提琴 - http://jsfiddle.net/qL0hj4jc/4/

您应该使用.offsetWidth和.offsetHeight属性。注意它们属于元素,而不是.style。