clone()
38
посл. ред.
12.08.2016
Метод clone()
возвращает копию всех элементов выборки в виде нового jQuery-объекта. Все вложенные элементы, если они имеются, тоже будут скопированы (полное клонирование). Данный метод может принимать один или два булевых аргумента, указывающих необходимость копирования обработчиков событий, установленных на элементах, и некоторых других jQuery-данных.
- Первый аргумент устанавливает необходимость копирования обработчиков событий и других jQuery-данных на самих элементах текущей выборки. По умолчанию равен
false
. - Второй аргумент устанавливает необходимость копирования обработчиков событий и других jQuery-данных на вложенных элементах. По умолчанию равен значению первого аргумента.
Варианты использования
jQ_object.clone() => jQuery
- Возвращает копию всех элементов выборки. Обработчики событий и данные не копируются.
jQ_object.clone(true) => jQuery
- Возвращает копию всех элементов выборки. Обработчики событий и данные копируются для всех элементов.
jQ_object.clone(true, false) => jQuery
- Возвращает копию всех элементов выборки. Копируются обработчики событий и данные только текущих элементов выборки.
jQ_object.clone(false, true) => jQuery
- Возвращает копию всех элементов выборки. Копируются обработчики событий и данные только вложенных элементов.
Примеры
<html> <head> <title>Работа с элементами DOM</title> <script type="text/javascript" src="js/jquery.js"></script> </head> <body> <p>Параграф</p> </body> </html> <script> var par = document.body.firstElementChild; par.addEventListener('click', function () { alert('Обработчик события из JavaScript') }); /* Установлен обработчик события напрямую из JavaScript */ $(par).css('background', 'red'); /* Добавлено CSS-свойство из jQuery */ $(par).click(function () { alert('Обработчик события из jQuery') }); /* Установлен обработчик события из jQuery */ $(par) .clone(true) /* Клонирован параграф со всеми обработчиками, установленными из jQuery */ .appendTo('body'); /* Вставлен новый параграф в документ */ $(par).remove(); /* Удалён старый параграф из документа */ </script>
Параграф