5

我有两个 div,在 css 中都没有设置高度,因为我想取它们最终的高度并将另一个 div 设置为那个高度。

我拥有的javascript是这个

function fixHeight() {
    var divh = document.getElementById('prCol1').height;
    document.getElementById('prCol1').innerHTML = '<ul><li>' + divh + '</li></ul>';
    document.getElementById('prCol2').style.height = divh + 'px';
}

我有以下代码行只是为了看看我是否得到了某种实际响应。

document.getElementById('prCol1').innerHTML = '<ul><li>' + divh + '</li></ul>';

我有一个 onload 设置来运行该功能

我的两个 div 看起来像这样

<div id="prCol1">
     ..content..
</div>
<div id="prCol2" class="slideshow">
    ..content..
</div>
4

5 回答 5

10

使用offsetHeight- http://jsfiddle.net/HwATE/

function fixHeight() {
    var divh = document.getElementById('prCol1').offsetHeight; /* change this */
    document.getElementById('prCol1').innerHTML = '<ul><li>' + divh + '</li></ul>';
    document.getElementById('prCol2').style.height = divh + 'px';
}
于 2012-06-12T20:44:27.643 回答
2

您可以使用 jQuery 获取高度并进行设置。

var h = $("#prCol1").height();
$("#prCol2").height(h);
于 2012-06-12T20:41:54.867 回答
0

我建议在这里使用 jQuery。您无法像在我知道的任何浏览器中尝试的那样获得元素的高度。如果您使用非常简单的 jQuery,这是代码。如果没有 jQuery,我不会尝试这样做,因为浏览器在访问高度方面可能会有所不同。

function fixHeight() {
    var $prCol1 = $('#prCol1');
    var divh = $prCol1.height();
    $prCol1.html('<ul><li>' + divh + '</li></ul>');
    $('#prCol1').height(divh);
}
于 2012-06-12T20:48:14.177 回答
0

有 jQuery 插件可以以一般方式执行此操作。 这是一个

于 2012-06-12T20:43:57.987 回答
0

您可以通过以下代码获得高度:

document.getElementById('YourElementID').clientHeight;
于 2020-09-08T05:20:20.237 回答