私の現在のコードはこれです
var existing = element.children().clone(true);
element.empty();
// Do some stuff with element
/* ... */
// Restore the previous content.
element.empty().append(existing);
要素の直下にテキストが含まれていない限り、これはうまく機能します。つまり、次のようになります。
// Works great, because .children() will get tag2 and tag3, etc.
<element><tag2>...</tag2><tag3>...</tag3></element>
// Doesn't work, because .children() doesn't get the text node.
<element>some_text<tag2>...</tag2></element>
だから私は試してみまし.contents()
たが、最初の要素にいくつかのイベントが関連付けられており(そのため.clone(true)
、現在のコードで使用しました).contents()
、イベントで要素を取得できません。
私が使用できる他の方法を知っていますか?または、複雑になりすぎずに、私がやりたいことを実行するコードを書くのを手伝ってもらえますか?
どうもありがとう。
編集
これを作成しました: http://jsfiddle.net/Jv6rW/を表示します。「クリック」をクリックすると、警告メッセージが表示されるはずです。