Клонирование и удаление
Пока вокруг клонирования ведутся дискуссии, у программистов всё уже на конвейере :)
Для клонирования элемента есть метод clone()
, он создаст для вас клон элемента, и вы сможете его вставить в DOM используя любой из подходящих методов.
Мало того, если у вас там были обработчики событий, то их также можно клонировать, достаточно лишь выставить первый аргумент в true
:
$("h1").click(() => alert("h1!"))
// клон без обработчиков событий
$("h1").clone()
// клон с обработчиком событий
$("h1").clone(true)
clone()
клонирует выбранные элементы, для дальнейшей вставки копий назад в DOM
clone(
withDataAndEvents = true
)
клонирует выбранные элементы, вместе с текущими обработчиками событий и данными data()
clone(
withDataAndEvents = true,
deepWithDataAndEvents = true
)
клонирует также обработчики событий и данные дочерних элементов
Кроме клонирования, вы можете изъять из DOM любой элемент, чтобы изменить и вставить назад, или вправе даже удалить его:
detach()
изымает элемент из DOM, но при этом сохраняет все данные о нём в jQuery; следует использовать, если надо лишь временно удалить элемент
empty()
удаляет текст и дочерние DOM-элементы
remove()
насовсем удаляет элемент из DOM
Last updated