八、节点的属性
关于节点的属性:nodeType,nodeName,nodeValue
在文档中,任何一个节点都有这三个属性,而id,name,value是具体节点的属性。
nodeType:元素节点--1,属性节点--2,文本节点--3,只读属性
nodeName:返回对应的节点的名字 只读属性
nodeValue:元素节点--null,属性节点--属性值,文本节点--文本值,可读写属性。
window.οnlοad=function(){
//1.元素节点的这三个属性
var bjNode=document.getElementById("bj");
alert(bjNode.nodeType);//元素节点:1
alert(bjNode.nodeName);//节点名:li
alert(bjNode.nodeValue);//元素节点无nodeValue属性值:null
//2.属性节点
var nameAttr=document.getElementById("name").getAttributeNode("name");
alert(nameAttr.nodeType);//属性节点:2
alert(nameAttr.nodeName);//节点名:属性名 name
alert(nameAttr.nodeValue);//属性节点的nodeValue属性值:属性值本身 username
//3.文本节点
var textNode=bjNode.firstChild;
alert(textNode.nodeType);//文本节点:3
alert(textNode.nodeName);//节点名:#text
alert(textNode.nodeValue);//文本节点的nodeValue属性值:文本值本身
//nodeType,nodeName是只读的
//而nodeValue是可以被改变的。
//以上三个属性只有在文本节点中使用nodeValue读写文本值时使用最多
}
九、总结
整个li是一个元素节点,其中的id,name是属性节点,北京是文本节点
1.节点的类型:元素节点、属性节点、文本节点
通常情况下,操作属性节点直接通过 元素节点.属性名 的方式来读写属性值,而不是获取属性节点
2.写JS代码的位置
2.1具体位置在哪
2.2window.onload事件被触发的时间,以及如何为该事件赋一个相应函数
3.如何获取元素节点
3.1根据id获取
3.2根据标签名TagName获取:该方法并非document对象所独有,任何元素节点都可以调用此方法,以获取指定的子节点。
3.3根据name属性名获取:若HTML元素本身没有name属性,我们硬添加一个name属性,使用getElementsByName(name),对于ie是不好用的
4.获取子节点
4.1childNodes属性:获取指定元素的所有子节点,但不怎么常用
4.2firstChild、lastChild属性:获取元素节点的文本节点(如果一个元素节点只有一个文本子节点)
4.3使用元素节点的getElementsByTagName("方法");
5.读写文本节点:
5.1文本节点一定是元素节点的子节点
5.2步骤:获取文本节点所在的元素节点-->利用firstChild获取文本节点->利用节点的nodeValue属性来读写文本值。
6.节点的属性:所有节点都有的属性
6.1nodeType:元素节点--1,属性节点--2,文本节点--3,只读属性
6.1nodeName:返回对应的节点的名字 只读属性
6.1nodeValue:元素节点--null,属性节点--属性值,文本节点--文本值,可读写属性。
7.属性节点:
7.1一般情况下不单独获取属性节点,而是通过元素节点.属性名的方式来读写属性值。