此循环(请参阅jsfiddle)尝试将<span>
标记 append 到容器五次。但是它只做一次。为什么?
var myArr = [0,1,2,3,4];
var $span= $('<span></span>');
for (var i = 0; i < (myArr.length); i++) {
$('.contain').append($span);
}
最佳答案
问题在于您要多次追加相同的元素。
使用clone
克隆元素,然后克隆append
。$('.contain').append($span.clone());
demo
更新:
这样,您可以自定义元素,然后使用所有属性对其进行克隆。
var $span = $('<span/>', {
'class': 'someClass otherClass',
'css': {
'background-color': '#FF0000'
}
});
for (var i = 0; i < (myArr.length); i++) {
$('.contain').append($span.clone());
}
demo2
Update2 :根据this的注释。
$('.contain').append('<span class="yourClass"/>');
关于jquery - 为什么只 append 一次?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12810461/