2

jquery には、.wrapAll()同じクラスのすべての div をラップするために使用される関数があります。

しかし、これとはまったく逆のことをしたいのですが、そこにはunwrapAll()関数がないため、同じクラスの複数のdivを一度にアンラップすることを意味します?? できますか???

例: 前に

<div class="outer">
<div class="inner">foon</div>
<div class="inner">foon2</div>
<div class="inner">foo3</div>    
</div>​

後:

<div class="inner">foon</div>
<div class="inner">foon2</div>
<div class="inner">foo3</div> 

提案された回答を使用した実例: http://jsfiddle.net/ScdLX/4/

4

2 に答える 2

2

次のようなことができます:

$(".outerDiv").replaceWith(function () { return $(this).html(); });

ただし、のテキスト ノードの子は削除されません.outerDiv

http://jsfiddle.net/ScdLX/2/

編集: @NullPointer ごと.unwrapに、親セレクターの子のメソッドを使用してこれを行うことができます。参照してください:

http://jsfiddle.net/ScdLX/3/

于 2012-11-29T05:27:01.053 に答える
1

のように使えます。

jQuery('.classname').children().unwrap();

クラス名「classname」のすべての要素を削除します

于 2012-11-29T05:42:34.433 に答える