JavaScript Dom信息
Dom节点的信息
nodeName:节点的名字,返回字符串
- 元素节点,返回这个元素的名字,相当于tagName属性,如p
- 属性节点,返回这个属性的名字
- 文本节点,返回一个#text的字符串
nodeType: 节点的类型,返回整数
常用的三种类型:
- nodeType == 1 : 元素节点 ,<p>,<h1>
- nodeType == 2 : 属性节点,title="cssrain"
- nodeType == 3 : 文本节点<p>test</p>test就是文本节点
| 整数 | 常量 |
| 1 | ELEMENT_NODE,普通元素节点,如<html>,<p>,<div>,<span>,<img> |
| 2 | ATTRIBUTE_NODE,元素属性 |
| 3 | TEXT_NODE,文本节点 |
| 4 | CDATA_SECTION_NODE,即<![CDATA[ ]]> |
| 5 | ENTITY_REFERENCE_NODE,实体引用,如& |
| 6 | ENTITY_NODE,实体,如<!ENTITY copyright “Copyright 2010, impng. All rights reserved”]> |
| 7 | PROCESSING_INSTRUCTION_NODE,PI,处理指令,如<?xml version=”1.0″?> |
| 8 | COMMENT_NODE,注释<!– –> |
| 9 | DOCUMENT_NODE,根节点,即document.nodeType |
| 10 | DOCUMENT_TYPE_NODE,DTD,文档类型<!DOCTYPE > |
| 11 | DOCUMENT_FRAGMENT_NODE,文档片段 |
| 12 | NOTATION_NODE,DTD中定义的记号 |
nodeValue:节点的值,返回字符串
- 元素节点,返回null
- 属性节点,这个属性的值
- 文本节点,这个文本节点的内容
nodeValue是一个可以读,可以写的属性,但不能设置元素节点的值
<div id="c">aaaaaaaaaaaaaaaa</div>
<SCRIPT LANGUAGE="JavaScript">
var c= document.getElementById("c");
alert( c.nodeValue );//返回null
</SCRIPT><div id="c">aaaaaaaaaaaaaaaa</div>
<SCRIPT LANGUAGE="JavaScript">
var c= document.getElementById("c");
c.nodeValue =" dddddddddddd"; //不能设置
//alert( c.firstChild.nodeValue ) //元素节点 包括属性节点和文本节点。
c.firstChild.nodeValue = "test"//能设置
</SCRIPT>
为确保可以正确运行,可以用如下的方法
<div id="c">aaaaaaaaaaaaaaaa</div>
<SCRIPT LANGUAGE="JavaScript">
var c= document.getElementById("c");
c.nodeValue =" dddddddddddd"; //不能设置
//alert( c.firstChild.nodeValue )
if( c.firstChild.nodeType==3 ){ //判断是不是 文本节点
c.firstChild.nodeValue = "test"//能设置
}
</SCRIPT>所以如要要设置属性节点,不能直接设置,需要先使用firstChild或者lastChild等,然后设置nodeValue.
nodeValue一般只用来设置文本节点的值,如果要刷新属性节点的值,一般使用setAttribute();
相关推荐
云中舞步 2020-11-12
杨德龙 2020-11-11
JohnYork 2020-10-16
wangzhaotongalex 2020-09-22
xiaoseyihe 2020-11-16
Crazyshark 2020-11-13
K先生 2020-11-10
思君夜未眠 2020-09-04
点滴技术生活 2020-08-21
MaggieRose 2020-08-19
kevinweijc 2020-08-18
wintershii 2020-08-17
vapaad 2020-08-17
wera00 2020-08-17
移动开发与培训 2020-08-16
ReunionIsland 2020-08-16
JimyFengqi 2020-08-16