我只能从下面的Javascript中附加1个card元素
我只能从下面的Javascript中附加1个card元素。请帮忙我只能从下面的Javascript中附加1个card元素,javascript,append,Javascript,Append,我只能从下面的Javascript中附加1个card元素。请帮忙 var gb=document.getElementById('game-board'); var cardCount=document.getElementsByClassName('card'); var children=document.createElement('div'); var createCards=函数(){ 对于(变量i=0;i
var gb=document.getElementById('game-board');
var cardCount=document.getElementsByClassName('card');
var children=document.createElement('div');
var createCards=函数(){
对于(变量i=0;i<5;i++){
children.className='card';
gb.儿童(儿童);
};
};
createCards();
在循环的每次迭代中,您的代码都试图将相同的div
(存储在子变量中)附加到gb
。请尝试为每个迭代创建新元素:
var gb=document.getElementById('game-board');
var createCards=函数(){
对于(变量i=0;i<5;i++){
var children=document.createElement('div');
children.className='card';
gb.儿童(儿童);
};
};
createCards()代码>
.card{
宽度:50px;
高度:50px;
边框:1px纯色灰色;
}
您只有一个在循环中不断移动的“子”项。解决此问题的一种方法是在每次追加之前对其进行克隆:
var gb = document.getElementById('game-board');
var cardCount = document.getElementsByClassName('card');
var children = document.createElement('div');
var createCards = function() {
for (var i = 0; i < 5; i++) {
children.className = 'card';
gb.appendChild(children.cloneNode(true));
};
};
createCards();
var gb=document.getElementById('game-board');
var cardCount=document.getElementsByClassName('card');
var children=document.createElement('div');
var createCards=函数(){
对于(变量i=0;i<5;i++){
children.className='card';
gb.appendChild(children.cloneNode(true));
};
};
createCards();
Movevar children=document.createElement('div')
进入for
循环cardCount
的主体似乎与代码示例不相关,因此您可能可以删除该行。这同样有效!谢谢,谢谢!!我从这里学到了很多。:)