javascript - 无法使用 JavaScript 调整 DIV 高度

标签 javascript jquery html css resize

我想用 JavaScript 调整 div 元素的高度。

从这个 div,我正在读取高度

<div class="pages" id="alles">

这是我要调整大小的 div(可以是多个)

<div class="content-block" name="maxhoehe">

这是我的 JavaScript 代码:

var sh = document.getElementById("alles").offsetHeight;
         document.getElementsByName("maxhoehe").style.height = sh-180 + "px";

在 chrome 中,我收到以下错误:

Uncaught TypeError: Cannot set property 'height' of undefined

我不知道为什么?

最佳答案

Document#getElementsByName方法返回元素集合,因此您需要通过索引获取第一个元素,否则 style 属性将是 undefined(nodelist 没有任何样式属性)。

document.getElementsByName("maxhoehe")[0].style.height = (sh - 180) + "px";

要全部更新,遍历元素并更新属性。

var elements = document.getElementsByName("maxhoehe");

// in latest browser use Array.from(elements)
[].slice.call(elements).forEach(function(ele){
   ele.style.height = (sh - 180) + "px"
}); 

关于javascript - 无法使用 JavaScript 调整 DIV 高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46169546/

相关文章:

javascript - ui-router 使用父级的 url 作为嵌套 View 模板的前缀

jquery - 有没有办法让 div 中的元素重新排列以适应可用空间?

css - 如何将控件 float 在图像顶部(使用图像背景)

javascript - JQuery - 无法删除表行

javascript - 无法让 Google Analytics 自定义变量发挥作用

jquery - 缓存 JSON 响应

jquery - 使用 jQuery 查找类并添加属性

javascript - jQuery 将子元素插入到集合索引处的元素中

javascript - 我如何在 angular.js 测试中使用 $http 的实际实现?

javascript - jQuery 可以操作插入的元素吗?