3

すべての子要素 ​​(データとリスナーを含む) を含む DOM 要素を複製したいのですが、結果の複製には異なる DOM タイプを持たせたいと考えています。

たとえば、変換したい:

<td>
 <p class="pclass">
  Hello
 </p>
 <p class="pclass">
  World!
 </p>
</td>

以下を含む新しい要素へ:

<div>
 <p class="pclass">
  Hello
 </p>
 <p class="pclass">
  World!
 </p>
</div>

注: 私は既に回答を持っていますが、それは他の人に興味を持たせる可能性があり、回答は完全ではありませんが十分であるため、このトピックを作成しました。

4

1 に答える 1

0

次の jQuery スクリプトがその役割を果たします。

var oldElement = $(your selector here);
var newElement = $('<my new HTML tag>').append($(oldElement).contents().clone(true, true));

このスクリプトは、要素のデータとイベント リスナーを保持します (cf. clone(true, true))。このスクリプトは、要素自体のデータとイベント リスナーを保持しません。

注意: 元の要素データとイベント リスナーを保持するための補足を誰かが提案するのは興味深いことです。そこに回答の開始が提案されています:https://stackoverflow.com/a/2207117/2227298

于 2013-04-14T11:01:50.463 に答える