javascript - 如何动态地将div添加到数组中?

标签 javascript arrays dom dom-manipulation

我想创建几个具有相同选项(如颜色、宽度、高度等)的 div

我想将所有这些 div 添加到一个数组中,但我需要动态执行此操作。

我当前的代码:

var ArrayInfo = []; 

    do { 
    var InfoDiv = document.createElement('div'); 
    InfoDiv.id = 'Info_Div'; 
    InfoDiv.className = 'Info_Div'; 
    InfoDiv.style.width = "100px"; 
    InfoDiv.style.height = "30px"; 
    InfoDiv.style.display = "inline-block"; 

    ArrayInfo.push(InfoDiv);

}while(i < x);

x 可以是一个非常非常大的数字。

  1. 这是将 div a 添加到数组的正确方法吗?
  2. 如何将文本写入数组元素?

我尝试过这个:

ArrayInfo[i].innerHTML = "something";

但是没有成功。

最佳答案

你永远不会增加i,所以你的循环永远不会结束。

其次,您实际上从未添加任何div到文档中——创建它们并不能为您做到这一点。

正如评论中所述,您不能一遍又一遍地使用相同的 id

var ArrayInfo = [];

var x = 10;

var ctr = document.getElementById('ctr');

for (var i = 0; i < x; ++i) {

  var InfoDiv = document.createElement('div');
  InfoDiv.id = 'Info_Div' + i;
  InfoDiv.className = 'Info_Div';
  InfoDiv.style.width = "100px";
  InfoDiv.style.height = "30px";
  InfoDiv.style.display = "inline-block";

  ArrayInfo.push(InfoDiv);

  ctr.appendChild(InfoDiv);
}

for (i = 0; i < x; ++i) {

  ArrayInfo[i].innerHTML = "div " + i;
}
<div id=ctr></div>

关于javascript - 如何动态地将div添加到数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34029651/

相关文章:

javascript - 如何在各种浏览器(如 IE8 和更早版本)中测试我的网页?

javascript - 如何退出 Android 版 Phonegap 应用程序?

javascript - 你如何观察 polymer 中元素的宽度?

AngularJS - 修改 iframe DOM

javascript - 滚动在 JavaScript 中不起作用

javascript - 虚拟化 : Dependent v-select based on selection

php - php 数组中的井号键/哈希键/井号标签

javascript - 如果数组中的所有值均为真(字符串)并且其中一个值为假(字符串),如何返回 boolean 值真停止使用 Javascript 检查

javascript - 检查字符串是否包含数组元素的任何部分

javascript - 鼠标悬停 - 如何多次触发它?