文本节点克隆cloneNode知多少

本文详细介绍了DOM操作中的cloneNode函数,解释了其两个参数的作用:true表示完全复制节点及其所有子节点,false则只复制当前节点。通过实例展示了如何使用此函数进行节点复制。

文本克隆函数cloneNode他有两个参数——true or false

true:完全的复制一个节点,什么叫完全呢,就是复制一切,包括他的子节点,以至于文本节点,凡是有的,一律克隆,所谓完全

false:只克隆当前节点,不克隆任何的子节点,当然也不会克隆他所包裹的文本,因为任何文本都有指向他的节点(文本节点)

当然有时候两者是可以通用的哦,如果要复制的节点没有任何的子节点,这是二者全等;比如 img...

为了让大家理解的更为深刻,举个小例子吧:

<div>
<span>Shadow</span> |No Shadow
</div>
我定义一个变量用于指向span节点
var element = document.getElementsByTagName('span')[0];
那么
var t1 = element.cloneNode(false).innerHTML;//不复制子节点
var t2 = element.cloneNode(true).innerHTML;//copy all
alert(t1);
alert(t2);
这是会依次输出 (空)“”和Shadow ;
var textnode = element.firstChild;//指向文本节点
var t1 = textnode.cloneNode(false).nodeValue;
var t2 = textnode.cloneNode(true).nodeValue;
alert(t1);
alert(t2);
这是他们会同时输出Shadow。



转载于:https://www.cnblogs.com/chaofan/archive/2009/12/26/1632512.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值