使用数据属性克隆并将Div附加到Div

时间:2013-05-08 00:37:43

标签: jquery clone

这甚至可能吗?

我的主div里面有一个div,我克隆了它并为每个克隆元素分配了一个唯一的数据属性。这些克隆的div里面有div,我希望它们也可以克隆。那么,我将如何使用.clone().appendTo()方法进行操作?

以下是我的代码的一些部分:

<div id="card_grid">
   <div class="cards_slot" data-unique="0" id="cards_slot">
      <div class="play_cards"></div>
   </div>
</div>

jQuery,JavaScript:

//Clone the card slots
for(var i=0;i<=18;i++) {
    $(".cards_slot:first-child").clone().appendTo("#card_grid");
}

//Initialize the cards slots' position
$("#card_grid").children().each(function(index) {
    $(this).css({
        "left" : ($(this).width() + 50) * (index % 5),
        "top" : ($(this).height() + 20) * Math.floor(index / 5)
    });
    var child_position = ($(this).parent().children().index(this));
    var element_id = $(this).attr('id');
    var new_id = element_id + child_position;
    $(this).attr('id', new_id);

     $(this).attr('data-unique', child_position);
});

1 个答案:

答案 0 :(得分:1)

是的,这是可能的。

var $toBeCloned = $(".cards_slot:first-child"); 

for(var i=0;i<=18;i++) {
    var $cloned = $toBeCloned.clone();
    $cloned.find('div:first').clone().appendTo($cloned);
    $cloned.appendTo("#card_grid");
}

http://jsfiddle.net/3JSPc/