javascript - getElementsByClassName 用于动态创建的元素

标签 javascript html class dynamic

我用 javascript 动态创建了一些 div:

<div class="tile"></div>
<div class="tile"></div>
<div class="tile"></div>
<div class="tile"></div>

现在我想选择这些 div 并像这样更改它们的尺寸:

var singleTiles = document.getElementsByClassName('tile');
singleTiles.style.width = '10px';
singleTiles.style.height = '10px';

但这似乎行不通。我假设是因为元素是动态添加的。还有其他方法吗?

最佳答案

document.getElementsByClassName ,它返回具有任何给定类名的所有子元素的数组。这里的元素是找到的元素的 HTMLCollection。所以你必须遍历它。

使用

var singleTiles = document.getElementsByClassName('tile');
for(var i=0; i<singleTiles.length; i++) { 
    singleTiles[i].style.width = '10px';
    singleTiles[i].style.height = '10px';
}

关于javascript - getElementsByClassName 用于动态创建的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21713442/

相关文章:

javascript - 如何从大型 js 文件中传递单个变量?

javascript - 从关联的输入元素获取表单

jquery - JQuery Lightbox 代码有问题

java - 如何在其他类中直接访问我的库类中的方法? java

CSS 级联优先级

javascript - 使用 typescript react redux 设置 reducer

javascript - Angular 为 2 的三态复选框

javascript - react-router-dom NavLink isActive 效果不佳

JavaScript 在 IE 7 上运行

c++ - 使用复制构造函数时,是否在复制构造函数之前初始化了类数据成员?