当前位置: 首页 > 图文教程 > 网络编程 > Javascript > childNodes.length与children.length的区别

Javascript
js 页面输出值
javascript实现的网页局布刷新效果
js+CSS 图片等比缩小并垂直居中实现代码
在IE,Firefox,Safari,Chrome,Opera浏览器上调试javascript
JavaScript获得选中文本内容的方法
asp 取文本框名称代码
JavaScript 基础问答二
JavaScript 基础问答三
支持多浏览器(IE、Firefox、Opera)剪切板复制函数_IT学习网修正版
js 深拷贝函数
Javascript 浅拷贝、深拷贝的实现代码
Javascript !!的作用
Javascript 表单之间的数据传递代码
JS 网页安全色调色板 DW风格
右下角弹出信息(自动关闭)
一个判断email合法性的函数[非正则]
javascript 回车替换成TAB的脚本
js 设置css的定位
JavaScript 拖拉缩放效果
javascript 公用拖拽类代码

Javascript 中的 childNodes.length与children.length的区别


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 194 ::
收藏到网摘: n/a

childNodes.length与children.length的值常不一样。 因为childNodes包含的不仅仅只有html节点,所有属性文本等都包含在childNodes里面,你可以通过nodeType来判断是哪种类型的节点,只有当nodeType==1时才使元素节点,2是属性节点,3是文本节点。而children.length只计算节点的数量。
包括进行节点长度的计算,节点的移动时都要注意这一点。
要获得一个元素的文本,比如要获得一个P节点的文本,有的人喜欢使用innerHTML,更改也是一样,其实这不太好,因为使用innerHTML浏览器会认为你要插入的东西是一段标签文本,而你只想插入一段纯文本,这就导致浏览器试图去解析你的那段纯文本,这会造成不必要的资源浪费。所以建议使用element.firstChild.nodeValue,为什么是firstChild呢?因为childNodes[0]就是文本节点,不信你可以看看它的nodeType