function test() {
var a = $('<p>'),
b = $('<div>')
for (var i = 0; i < 10; i++) {
b.append(a)
}
console.log(b)
}
此函数在其中创建1个元素,其中包含1个
元素。为什么没有10个
元素?如何循环多次
元素?
答案 0 :(得分:1)
当你附加一个元素时,因为它只有一个父元素,你可以从它的古老位置删除它。
所以你必须在附加之前克隆它:
for (var i = 0; i < 10; i++) {
b.append(a.clone())
}
答案 1 :(得分:1)
append()
函数移动你的对象。
您应该在clone()
append()
function test() {
var a = $('<p>'),
b = $('<div>')
for (var i = 0; i < 10; i++) {
b.append(a.clone())
}
console.log(b)
}
答案 2 :(得分:0)
试试这个:
for (var i = 0; i < 10; i++) {
b = b.append(a);
}
答案 3 :(得分:0)
每次循环时都需要创建一个新元素,而不是重复使用相同的元素,因为元素只能在DOM中的一个位置。
for (var i = 0; i < 10; i++) {
b.append($("<p>"));
}