Полностью разрезать и вставить элемент

Можно ли отрезать (полностью, со всеми стилями и атрибутами) элемент из местоположения и вставить его в другое место (например, 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);