1

私はHTML構造を持っています例えば

<div id="mydiv" class="some" onclick="alert('Hello!')" style="background:red" >
   <div>aa</div>
   <div style="background:green" >bb</div> 
</div>  

http://jsfiddle.net/Pj5sn/

そして私は欲しい

<div id="mydiv" class="some" onclick="alert('Hello!')" style="background:red" >
</div>

結果として。.clone()深いコピーを作成しますが、浅いコピーが必要です。

これまでに含まれていたすべての回答を編集して、詳細なコピーと明確なコンテンツを実行します。それぞれが数十個のオブジェクトを含む数十個のコンテナに使用するつもりです。もっと効率的なものが必要だと思います。

4

4 に答える 4

8

.clone()最初に使用し、次に結果に使用.empty()します。

于 2012-09-19T12:33:41.073 に答える
3

最も簡単なのはです$(this).clone().html('')

于 2012-09-19T12:33:36.333 に答える
0

複製しようとしている div からコンテンツを削除する必要があります。

var s = $('#mydiv').clone().html('');
$('#container').append(s);

シンプルだけど効く!

http://jsfiddle.net/shannonhochkins/Pj5sn/1/

ほら!

于 2012-09-19T12:37:17.610 に答える
0

私が使用したソリューションは少し異なります。まず、いくつかの構造を作成し、divコンテンツを内部に移動します。

var $storage=$('<div/>').append($("#mydiv").children());

これで、残りの「シェル」のクローンを作成し、コンテンツの適切な部分に移動できます。

$("#mydiv").clone(true,true).attr("id","d1")
     .appendTo($(document.body))
      .append($(":first-child",$storage));

http://jsfiddle.net/KyTZ6/

複雑すぎるように思えるかもしれませんが、私のタスクは HTML テーブル (~30 x 30) を 6 つの部分に分割することでした。

于 2013-05-03T13:46:46.080 に答える