nodeValue、firstChild和lastChild属性

nodeValue属性
如果想改变一个文本节点的值,那就使用DOM提供的nodeValue属性,他用来得到(和设置)一个节点的值:
node.nodeValue
但是有个细节必须注意:在用nodeValue属性获取description对象的值时,得到的并不是包含在这个段落里的文本。
可以用下面这条alert语句来验证这一点:
alert(description.nodeValue);
html代码如下
<html>
<body>
<p id = "description">ssssss</p>
</body>
</html>
这个调用将返回一个null值。<p>元素本身的nodeValue属性是一个空值,而你真正需要的是<p>元素所包含的文本的值。
包含在<p>元素里的文本是另一种节点,它是<p>元素的第一个子节点。因此,你想要得到的其实是它的第一个子节点的nodeValue属性值。
下面这个条alert语句可以显示你想要的内容:
alert(description.childNodes[0].nodeValue);
这个值来自childNodes数组的第一个(下标是0)元素。

firstChild和lastChild属性
数组元素childNodes[0]有个更直观易读的同义词。无论何时何地,只要需要访问childNodes数组的第一个元素,都可以把它写成firstChild:
node.firstChild
这种写法与下面的写法完全等价:
node.childNodes[0]
DOM还提供了一个与之对应的lastChild属性:
node.lastChild
这代表着childNodes数组的最后一个元素。

 

posted @ 2016-12-20 16:29  黑岛  阅读(676)  评论(0编辑  收藏  举报