19.3.2. Копирование элементов
Как отмечалось выше, при вставке элементов, уже являющихся частью документа, эти элементы не копируются, а просто перемещаются в новое местоположение. Если элемент вставляется в несколько мест, библиотека jQuery скопирует элемент столько раз, сколько потребуется, но копирование не выполняется при вставке только в одно местоположение. Если потребуется не переместить, а скопировать элемент, необходимо сначала создать копию с помощью метода clone(). Метод сlопе() создает и возвращает копии всех выбранных элементов (и всех потомков этих элементов). Копии элементов, находящиеся в возвращаемом объекте jQuery, не являются частью документа, но их можно вставить в документ с помощью любого из методов, представленных выше:
// Добавить новый div с атрибутом id="linklist" в конец документа
$(document.body).append("<div id= 'linklist' ><h1>List of Links</h1></div>");
// Скопировать все ссылки в документе и вставить их в этот новый div
$("а").clone().appendTo("#linklist");
// Вставить элементы <Ьг/> после каждой ссылки, чтобы они отображались в отдельных строках
$("#linklist > а").after("<br/>");
По умолчанию метод clone() не копирует обработчики событий (раздел 19.4) и другие данные (раздел 19.2.7), связанные с элементами. Если необходимо будет скопировать эти дополнительные данные, передайте методу clone() значение true.
Больше книг — больше знаний!
Заберите 30% скидку новым пользователям на все книги Литрес с нашим промокодом
ПОЛУЧИТЬ СКИДКУ