创建、插入和删除节点

2018-08-13  本文已影响0人  A郑家庆

创建、插入和删除节点

1.创建节点
creatElement:创建元素节点
creatAttribute:创建属性节点,用法有点复杂,可以用setAttribute实现
creatTextNode:创建文本节点,用法有点复杂,可以用innerText实现

var image = document.createElement(img)
image.src = 'state/2.png'

2.复制节点
cloneNode()方法克隆所有属性以及它们的值。如果您需要克隆所有后代,请把 deep 参数设置 true,否则设置为 false。
例:

var clone = document.getElement('list').lastChild.cloneNode(true)
document.getElement('list1').appendChild(clone)

3.插入节点
appendChild()和insertBefore()
appendChild()是在需要插入的Element节点上调用的,它插入指定的节点使其成为那个节点的最后一个子节点,接收一个参数。
insertBefore()接收两个参数,第一个参数是待插入的节点,第二个参数是已存在的节点,新节点将插入该节点的前面。该方法是在新节点的父节点上调用,方法的第二个参数必须是该父节点的子节点。如果传递null作为第二个参数,insertBefore的行为类似appendChild(),它将节点插入在最后。
4.删除和替换节点
removeChild()方法是从文档数中删除一个节点,该方法在待删除的父节点上调用,并将需要删除的子节点作为参数传递给它。例:

n.parentNode.removeChild(n)

replaceChild()方法是删除一个子节点并用一个新的节点替换它。在父节点上调用该方法,第一个参数是新节点,第二个参数是需要替换的节点。
5.DocumentFragment
DocumentFragment是一种特殊的Node,它作为其他节点的临时容器。将这样创建

var frag = document.creatDocumentFragment()

DocumentFragment的特殊之处在于它使得一组节点被当做一个节点看待:比如给appendChild()传递一个DocumentFragment,其实是将该文档片段的所有子节点插入到文档中,而不包括片段本身。例:

var f = document.creatDocumentFragment()
while(n.lastChild)   f.appendChild(n.lastChild)
n.appendChild(f)
上一篇下一篇

猜你喜欢

热点阅读