#first
を#test
にコピーするシナリオは、それを実装する2つのシナリオです。複製されたオブジェクトとハードコードされたHTMLの違い
<div class="first">
<div class="second">1</div>
</div>
<div class="test">
<div>--------------</div>
</div>
JQUERY1:JQUERY1上
var cloner = $('.first').clone().prop({
'class': 'changed_first'
});
$('.test').append(cloner)
$('.changed_first > .second').attr('class', 'changed_second');
$('.changed_first > .second').html('2');
迂回質問:内部要素のプロパティを変更するには、cloneメソッドで可能性はありますか?
JQUERY2:
$('.test').append('<div class="changed_first"><div class="changed_second">2</div></div>');
のように行うことができますより多くの定義を必要とする非常に漠然とした用語であり、スピード、最短コード、または...の点で最高?私はそれをテストしていませんが、私は、2つ目の方法は、あなたが1つのDOMアクセス呼び出しを行うようにすることではるかに速いと仮定します。それはあまりメンテナンスではありません。 –
挿入する前にクローンを変更すると、DOMを一度変更するだけで、cloneNodeは一般的にかなり高速です – adeneo
https://jsfiddle.net/adeneo/vodf2ebs/ – adeneo