0

を使用してボックスを作成しましたdiv

<div class="panel" style="display:inline; float:left;position: relative; width: 140px; height: 200px; border:solid 2px; border-color: red;cursor: pointer;"></div>

jQuery を使用して要素のクローンを作成し、そのクローンをそれ自体に追加しようとしましたが、期待どおりに動作しません。

for (; i < noC; i++) {
    $(".panel").clone().appendTo($(".panel"));
}

各ボックスを最後のボックスの後に追加したい。

[]     // noC = 1
[][]   // noC = 2
[][][] // noC = 3

代わりに、新しい各ボックスが前のボックスの内側に挿入されます。

[]     // noC = 1
[[]]   // noC = 2
[[[]]] // noC = 3

それ、どうやったら出来るの?

4

7 に答える 7

2
noC = 3;
for(i= 0; i < noC;i++) {
    $("#panel").append(function(){     
        return $("#panel").find('div').length==0?$(this).clone(): $("#panel").find('div:first').clone();
    });
}​

ライブ デモについては、次のリンクを参照してください: http://jsfiddle.net/nanoquantumtech/PBBNe/ //または

     noC = 3;
    for(i= 0; i < noC;i++) {
    $("body").append($("#panel:first").clone());        
     }​

ライブ デモについては、次のリンクを参照してください: http://jsfiddle.net/nanoquantumtech/HvnbU/

于 2012-05-16T07:34:27.770 に答える
0

構文エラーがあり、間違ったもののクローンを作成しようとしているようです。

var i = 0;
var noC = 3;
for(i=0; i < noC; i++){
    $('#panel').clone().appendTo('.a');
}

.panelからに変更したことに注意してください#panel

于 2012-05-16T06:56:30.113 に答える
0

「後」http://api.jquery.com/after/で解決します

ここに私の例を示してくださいhttp://jsfiddle.net/gastonnina/Mf2dE/2/

<script>
function cloname(that){
    var li = $(that).closest('li');
    var clon = li.clone();
clon.html(clon.html()+" clonado");
li.after( clon );
}     
</script>
<ul>
    <li>Contenido1 <a href="javascript:void(0)" onclick="javascript:cloname(this);">CLONA</a></li>
</ul>  
于 2014-01-03T20:13:24.997 に答える
0
var noC = 2;
    cloned = $('.panel').clone();
for(i= 0; i < noC;i++) {
    cloned.appendTo($(".panel"));
}​

デモ

数回必要な場合は、関数をデバイスできます。

function appendClones(target, times) {
    var noC = times;
        cloned = $(target).clone();
    for(i= 0; i < noC;i++) {
        cloned.appendTo($(target));
    }​
}

関数を呼び出します。 appendClones('.panel', 3);

注: id#panelを class に変更し.panelます。複数idは不可なので。

于 2012-05-16T07:05:27.367 に答える
0

これを確認してください。次のクローンを作成しようとしていると思いますpanel

フィドル

于 2012-05-16T07:01:00.657 に答える