Способ работы jQuery .clone()
, как только вы вставляете клонированный объект где-то, вы не можете вставить его снова в другой раз, не повторно клонируя исходный объект. Например, если вы сделаете это:
jQuery clone бесконечное время?
var cloned = $('#elem1').clone();
$('#elem2').after(cloned);
$('#elem2').after(cloned);
только одна копия elem1
будет скопирована и второй after
вызов не сделал бы ничего.
Есть ли способ не «очистить буфер обмена» после использования клонированного объекта? Сейчас я делаю это, клонируя объект, прежде чем вставлять его где-нибудь. Есть лучший способ сделать это?
Да, я просто использовал идентификаторы в качестве примеров - должен был быть более осторожным. – Suan
Не эксперт по jQuery; требуется второй поиск? Не могли бы вы сделать, например, 'cloned = cloned.clone()' вместо 'cloned = $ ('# elem1'). Clone()' в третьей строке? –
@ danielWagner Это не очень хорошая идея, если только ваш клонированный элемент не был пустым (чего не должно быть, потому что тогда вы должны использовать цикл для создания этих элементов). В противном случае вы будете клонировать любой динамически добавленный вход, уже вставленный в вашу «клонированную» переменную;) –