nodeClone()


<script type="text/javascript">

window.onload=function()
{

var sourse=document.getElementById('div0')
for(var i=1;i<5;i++)
{
var clone=sourse.cloneNode(true);
clone.setAttribute('id','div'+i);
sourse.parentNode.appendChild(clone);
}
}
</script>
</head>


<div id="div0">
<div><p>fdfdfff</p></div>
<span>dfdf</span>
</div>

[img]http://dl2.iteye.com/upload/attachment/0108/3388/0d7fccb8-2232-35df-83e2-39d3cab982ea.png[/img]

cloneNode(true);为true时克隆子代所有元素 false时只copy自己

注意
但是无论是浅拷贝还是深拷贝source都不会将自己的css属性克隆给clone

css代码
#div0{display: inline-block; width: 200px;}


效果如图
[img]http://dl2.iteye.com/upload/attachment/0108/3402/083477a6-7bcb-3ccb-b967-a1ce4b8800f8.png[/img]

[img]http://dl2.iteye.com/upload/attachment/0108/3404/59e8d656-a808-3f8c-840c-4c874b5bfb8d.png[/img]

解决方法
if ( node.nodeType === 1 ) {
style = window.getComputedStyle( node );

styleKeys.forEach( function ( prop ) {
clone.style[ prop ] = style[ prop ];
});
这样clone就具有了node的css属性
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值