javascript dom

一、DOM基础
1.节点(node)层次
Document--最顶层的节点,所有的其他节点都是附属于它的。
DocumentType--DTD引用(使用<!DOCTYPE>语法)的对象表现形式,它不能包含子节点。
DocumentFragment--可以像Document一样来保存其他节点。
Element--表示起始标签和结束标签之间的内容,例如<tag></tab>或者<tag/>。这是唯一可以同时包含特性和子节点的节点类型。
Attr--代表一对特性名和特性值。这个节点类型不能包含子节点。
Text--代表XML文档中的在起始标签和结束标签之间,或者CDataSection内包含的普通文本。这个节点类型不能包含子节点。
CDataSection--<![CDATA[]]>的对象表现形式。这个节点类型仅能包含文本节点Text作为子节点。
Entity--表示在DTD中的一个实体定义,例如<!ENTITY foo"foo">。这个节点类型不能包含子节点。
EntityReference--代表一个实体引用,例如&quot;。这个节点类型不能包含子节点。
ProcessingInstruction--代表一个PI。这个节点类型不能包含子节点。
Comment--代表XML注释。这个节点不能包含子节点。
Notation--代表在DTD中定义的记号。这个很少用到。

Node接口定义了所有节点类型都包含的特性和方法。
 
特性/方法                类型/返回类型                     说明 
nodeName             String                  节点的名字;根据节点的类型而定义 
nodeValue            String                  节点的值;根据节点的类型而定义 
nodeType             Number                  节点的类型常量值之一 
ownerDocument        Document                指向这个节点所属的文档 
firstChild           Node                    指向在childNodes列表中的第一个节点 
lastChild            Node                    指向在childNodes列表中的最后一个节点 
childNodes           NodeL                    所有子节点的列表 
previousSibling      Nod                      指向前一个兄弟节点;如果这个节点就是第一个兄弟节点,那么该值为null 
nextSibling          Node                     指向后一个兄弟节点;如果这个节点就是最后一个兄弟节点,那么该值为null 
hasChildNodes()      Boolean                  当childNodes包含一个或多个节点时,返回真 
attributes           NamedNodeMap             包含了代表一个元素的特性的Attr对象;仅用于Element节点 
appendChild(node)    Node                     将node添加到childNodes的末尾 
removeChild(node)    Node                     从childNodes中删除node 
replaceChild(newnode,oldnode)  Node                                   将childNodes中的oldnode替换成newnode 
insertBefore(newnode,refnode)  Node           在childNodes中的refnode之前插入newnodd 
parentNode	            Node           父节点

除节点外,DOM还定义了一些助手对象,它们可以和节点一起使用,但不是DOM文档必有的部分。
NodeList--节点数组,按照数值进行索引;用来表示和一个元素的子节点。
NamedNodeMap--同时使用数值和名字进行索引的节点表;用于表示元素特性。
2. 访问指定节点
(1). getElementsByTagName()
(2). getElementsByName()
(3). getElementById()
3. 创建新节点
最常用到的几个方法是
createDocumentFragment()  --创建文档碎片节点
createElement(tagname)       --创建标签名为tagname的元素
createTextNode(text)            --创建包含文本text的文本节点
			
createElement()、createTextNode()、appendChild()
			
removeChild()、replaceChild()、insertBefore()

你可能感兴趣的:(JavaScript,xml)