ID转入循环

ID Divs in For Loops

本文关键字:循环 ID      更新时间:2023-09-26

使用Javascript。我试图复制一个div并在fo中动态命名它

var origDiv = document.getElementById("outerSquare");
for (i=1; i<=4; ++i){
    newDiv = document.body.appendChild(origDiv.cloneNode(true));
//  newDiv.id = "block"+i;
    newDiv.setAttribute("id", "block"+i);
}

Fiddle:http://jsfiddle.net/dmperkins74/5r01zyma/

有趣的是,它似乎只是复制了我的"outerSquare"中的div。如果我取消了重置ID的尝试,那么一切都会失败。任何见解都将不胜感激。

谢谢,Dan P.

使用类:

<div class="outerSquare">
<div class="innerSquare"></div>
</div>
var origDiv = document.getElementsByClassName("outerSquare")[0];
for (i=1; i<=4; ++i){
    newDiv = document.body.appendChild(origDiv.cloneNode(true));
    newDiv.style.left = i*40 +"px";
    newDiv.style.top = i*40 +"px";
//  newDiv.id = "block"+i;
   //newDiv.setAttribute("id", "block"+i);
}
origDiv.style.left = "200px";
block2.style.left = "400px";

http://jsfiddle.net/5r01zyma/3/没有身份重复,没有样式问题。

通过更改ID,您无法应用旧的css样式。这就是问题所在。附言:现在你可以添加id,如果你需要的话。