Полностью разрезать и вставить элемент
Можно ли отрезать (полностью, со всеми стилями и атрибутами) элемент из местоположения и вставить его в другое место (например, body
) с помощью jQuery?
Кроме того, я хочу поместить строку (или тег) в прежнее место, потому что я хочу изменить ее место на прежнее место в конце script.
Могу ли я?
Как?
Спасибо.
Ответы
Ответ 1
appendTo() автоматически перемещает согласованные элементы из своего текущего местоположения в указанный контейнер, который, кажется, вам нужен.
Вы можете использовать after() для вставки нового содержимого перед перемещением элемента:
$("#yourElement").after("<p>Element was there</p>").appendTo("body");
Ответ 2
.detach()
более подходит для этой задачи, как предположил @lvan.
jQuery(jQuery("#yourElement").detach()).appendTo("body");
Ответ 3
вы можете сделать это клоном
сначала скопируйте его в другое место
$('#yourElement').clone().appendTo('#anotherDiv');
затем удалите старый,
$('#parentOfOldElement #yourElement').remove();
или вы можете заменить его, чтобы получить его позже
$('#parentOfOldElement #yourElement').replaceWith('<div id="toReplaceAgain">/div>');
Ответ 4
если у вас есть подобный HTML-код:
<div class="a">
<div class="b"></div>
</div>
Вы можете действовать следующим образом:
var div = '<div class="a">'+
'<div class="b"></div>'+
'</div>';
$("body").append(div);