比较详细的javascript DOM 学习笔记第1/2页

一、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   NodeList   所有子节点的列表  
previousSibling   Node   指向前一个兄弟节点;如果这个节点就是第一个兄弟节点,那么该值为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  

除节点外,DOM还定义了一些助手对象,它们可以和节点一起使用,但不是DOM文档必有的部分。
NodeList--节点数组,按照数值进行索引;用来表示和一个元素的子节点。
NamedNodeMap--同时使用数值和名字进行索引的节点表;用于表示元素特性。

2.访问相关的节点
下面的几节中考虑下面的HTML页面
 

<html>
    
<head>
        
<title>DOM Example</title>
    
</head>
    
<body>
        
<p>Hello World!</p>
        
<p>Isn't this exciting?</p>
        
<p>You're learning to use the DOM!</p>
    
</body>
</html>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjzssj.html