JAVASCRIPT中的DOM,个人认为跟XML中的有很大相似之处,之前所接触的XML知识,在这里可以帮助更好的理解JAVASCRIPT中的DOM。
1.HTML或CSS发送给浏览器时,网页被文本转化为DOM,所有的样式,值,甚至大部分空格都合并到DOM中了。
2.节点的属性
NodeName:节点的名称
NodeValue:节点的值
ParentNode:节点父节点的名称(每个元素,属性和文本都会有一个父亲节点)
ChildNodes:节点的子节点列表。对于HTML,该列表只对元素有意义,但文本节点和属性节点没有孩子
LastChild:节点的子节点列表中最后一个节点
attributes:仅仅用于元素节点,返回的是元素的属性列表
previousSibling:返回其父节点的子节点列表中位于其前面的那个节点
NextSibling:返回其父节点的子节点列表中位于其后面的那个节点
3.几个注意点:
文本节点是没有NodeName的,为空值(在浏览器中称之“为定义");Nodevalue返回节点的文本值
元素节点是没有NodeValue的,为空值,NodeName返回元素的名称
属性节点既有NodeName,又有NodeValue
4.
所有基于DOM的代码都要用到文档节点,其不是一个元素而是代表页面本身;因此在DOM中,文档节点就是整个DOM树。JS中,document访问文档节点 var mydocument=document;此句返回文档的DOM树,从这里我们可以访问树中的所有节点,此外,document可以创建新节点(属性,元素,文本),如下代码:
var pElement=document.createElement("p");
var text=document.createTextNode("help");
pElement.appendChild(text);
bodyElement.appendChild(pElement);
属性很奇怪,它不象元素或文本那样是元素的孩子,也就是说它出现在元素之下,但是元素又可以拥有属性,DOM使用节点来表示属性,允许通过专门的元素列表来访问属性。属性和文本是没有哦孩子的,”孩子“一说只针对元素节点。
浙公网安备 33010602011771号