Klonen von Elementen, die Vermeidung von mehr als einem Klon zu einem Zeitpunkt hinzufügen
Ich möchte einfach eine weitere Klon auf jeden Klick. Hab ich was verpasst obvious_ Dank
Skript:
$(function(){
$('input').click(function(){
$('.cloneitem').clone().appendTo('#container');
});
});
HTML:
<input type="button" value="clone it"/>
<div id="container"></div>
<div class="cloneitem">clone</div>
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, diese http://jsfiddle.net/p57hm/1/
Derzeit sind Sie Klonen alle Elemente, die die Klasse
.cloneitem
aber Sie will nur 1 zu einer Zeit, so dass Sie nicht wollen, um alle zu markieren die.cloneItem
aber nur der erste, und Klonen Sie diese.Ihre Klone haben immer noch die Klasse
cloneitem
so sind deshalb geklont wieder.Entfernen Sie entweder diese Klasse, oder ändern Sie den Wahlschalter so ein, dass Sie es nicht sind.
Etwas wie dies, indem die Klasse-Klone und das herausfiltern dieser Artikel:
http://jsfiddle.net/infernalbadger/p57hm/4/
$('.cloneitem')
wählt alle Elemente mitcloneitem
Klasse.verwenden
.first()
:Sind Sie Klonen eines Elements mit der Klasse "cloneitem" und dann auch anfügen, das geklonte element mit der gleichen Klasse Probleme für die nächsten Klon.
.first()
, wie es ist unnötiger, weil die Klone cloneItem Klasse entfernt wird, werden Sie nicht geklont werden, sowieso. Diese Weise mehrere Objekte geklont werden kann auf einmal, wenn es so gewünscht wird.Hatte das gleiche Problem. Vergeben Sie eine id für das div, die Sie Klonen möchten auf diese Weise ist es einzigartig. Ein element kann nur eine id, aber viele Klassen.
Sind Sie Klonen alle Elemente mit 'cloneitem' Klasse, so in der ersten Zeit, die es-Klone einmal, in der zweiten Zeit-es-Klon zwei..
U können es beheben, indem Sie die Filter nur das erste Objekt wie folgt:
Können Sie auch wählen Sie immer die Letzte:
Oder nur binden .clone() auf das erste Element:
http://jsfiddle.net/tZuDe/