我有两个并排的 div。它们都没有标准高度,但是当另一个在表单提交后填充内容时,第一个有内容。我想将第二个的高度设置为与第一个相同。
这是 html:
<div id='left'>
...........
</div>
<div id='right'>
...........
</div>
<script type="text/javascript">
$(document).ready ( function(){
var divHeight = document.getElementById('left').style.height;
document.getElementById('right').style.height = divHeight+'px';
});
</script>
我在控制台上没有任何错误,但第二个 div 的高度没有改变。有帮助吗?
最佳答案
您正在寻找 offsetHeight
。最左边的 div 的 height
属性未设置(因为那是实际的 CSS 属性,并且您没有静态设置高度),但 offsetHeight
是实际高度由其内容定义的 div。
var offsetHeight = document.getElementById('left').offsetHeight;
document.getElementById('right').style.height = offsetHeight+'px';
这是一个 jsFiddle进行演示。
请注意,还有 clientHeight
。不同之处在于 offsetHeight
还包括填充和边框。参见 this answer
关于javascript - 使用来自另一个 div 高度的 javascript 设置 div 高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22966501/