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

Javascript
不是原型继承那么简单!!prototype的深度探索
JavaScript与函数式编程解释
转一个日期输入控件,支持FF
用 JSON 处理缓存
改版了网上的一个js操作userdata
仿服务器端脚本方式的JS模板实现方法
javascript函数库-集合框架
Javascript模板技术
javascript实现的listview效果
JavaScript 实现網頁打印處理
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
实现div可编辑的常见方法总结
js奇偶数判断的代码
可以支持多中格式的JS键盘
javascript静态的url如何传递
JS实多级联动下拉菜单类,简单实现省市区联动菜单!
Packer 3.0 JS压缩及混淆工具 下载
学习jquery必备 api中英文对照的chm手册 下载
用js实现CSS圆角生成更新
用js实现的抽象CSS圆角效果!!

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 350 ::
收藏到网摘: 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