场景是在#first
内复制#test
,以下是实施它的两种方案,哪种方式最好?为什么?
<div class="first">
<div class="second">1</div>
</div>
<div class="test">
<div>--------------</div>
</div>
JQUERY1:
var cloner = $('.first').clone().prop({
'class': 'changed_first'
});
$('.test').append(cloner)
$('.changed_first > .second').attr('class', 'changed_second');
$('.changed_first > .second').html('2');
关于JQUERY1的绕道问题:克隆方法中是否有可能改变内部元素的属性?
JQUERY2:
$('.test').append('<div class="changed_first"><div class="changed_second">2</div></div>');
答案 0 :(得分:0)
使用克隆的第一种方法将是一个很好的方法。
是的,您可以在将克隆元素绑定到dom之前对其进行操作。
如果要在将if绑定到任何地方之前访问任何id或类到克隆元素,可以这样做
var cloner = $('.first').clone().prop({
'class': 'changed_first'
});
cloner.find('#id').css('something','css-value');
var data_id = cloner.find('.class').attr('data-bind');