为什么这只附加一次?

时间:2012-10-10 00:51:05

标签: jquery append

此循环(请参阅jsfiddle)尝试将<span>标记附加到容器五次。但它只做了一次。为什么呢?

var myArr = [0,1,2,3,4];
var $span= $('<span></span>');
for (var i = 0; i < (myArr.length); i++) {
    $('.contain').append($span);
}

1 个答案:

答案 0 :(得分:7)

问题在于您多次附加相同的元素 使用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"/>');