1,childNodes 属性,标准的,它返回指定元素的子元素集合,包括HTML节点,所有属性,文本。可以通过nodeType来判断是哪种类型的节点,只有当nodeType==1时才是元素节点,2是属性节点,3是文本节点。

有些人错误的使用()去取该集合元素,下表列出各浏览器对childNodes(i)的支持情况:

  IE6/7/8/Safari/Chrome/Opera IE9/Firefox
childNodes(i) 支持 不支持

有时候需要获取指定元素的第一个HTML子节点(非属性/文本节点),最容易想到的就是firstChild 属性。代码中第一个HTML节点前如果有换行,空格,那么firstChild返回的就不是你想要的了。可以使用nodeType来判断下。

?
1
2
3
4
5
6
function  getFirst(elem){
     for ( var  i=0,e;e=elem.childNodes[i++];){
         if (e.nodeType==1)
             return  e;
     }      
}

2,children 属性,非标准的,它返回指定元素的子元素集合。经测试,它只返回HTML节点,甚至不返回文本节点。且在所有浏览器下表现惊人的一致。和childNodes 一样,在Firefox下不支持()取集合元素。因此如果想获取指定元素的第一个HTML节点,可以使用children[0]来替代上面的getFirst函数。需注意children在IE中包含注释节点。

children和childNodes 的区别相关推荐

  1. javascript中children和childNodes的区别

    javascript中children和childNodes的区别 1.childNodes:它是标准属性,它返回指定元素的子元素集合,包括HTML节点,所有属性,文本节点. 可以通过nodeType ...

  2. JavaScript中Element与Node的区别,children与childNodes的区别

    关于Element跟Node的区别,cilldren跟childNodes的区别很多朋友弄不清楚,本文试图让大家明白这几个概念之间的区别. Node(节点)是DOM层次结构中的任何类型的对象的通用名称 ...

  3. children与childNodes的区别

    children与childNodes都是获取目标元素的子节点,不同的是: 1.children是非标准属性,childNodes是标准属性. 2.children获取的都是元素节点,而childNo ...

  4. JS中children与childNodes的区别

    博主"不知所言"在https://blog.csdn.net/yhn1121/article/details/52461353中已经写得很生动形象了, 个人做一点点补充, var ...

  5. Dom 中 children 与childNodes 的区别

    <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...

  6. JS children和childNodes的区别

    属性介绍 children children:返回父元素所有的直系子节点的集合,注意,children只返回HTML元素节点,不包括文本节点和属性节点. childNodes childNodes:返 ...

  7. children和childNodes的区别

    children 获取当前元素的子节点元素(不包含文本元素) childNodes 获取当前元素的子节点元素(包含文本元素) 有的时候不一定有children属性 为了兼容可以把childNodes中 ...

  8. Js-parentNode、parentElement,childNodes、children 它们有什么区别呢?

    原文:http://www.it130.cn/Article/FAQ/Web-kaifa/JavaScript/2007-3-20/2007032017013900.html 所属分类:Web 开发 ...

  9. php childnodes,小tips:HTML DOM中的children和childNodes属性

    childNodes 属性 标准的,childNodes 属性返回节点的子节点集合,以 NodeList 对象.包括HTML节点,所有属性,文本.可以通过nodeType来判断是哪种类型的节点,只有当 ...

最新文章

  1. 江湖永在:金庸先生和阿里人的那些记忆
  2. 额外篇 | basemap(下)
  3. html不同平台,基于H5端自定义平台怎么使用和H5端不一样的index.html?
  4. 显卡欺骗器状态检测及安装注意事项
  5. .NET 5 的重大改变:消失的历史技术
  6. 16年国庆假期期间兼职所悟
  7. C++Primer学习笔记:第8章 IO库
  8. 无数踩坑系列(3)-配置pytorch
  9. Docker中RocketMQ的安装与使用
  10. Linux下修改只读文件
  11. nginx proxy模块
  12. 李宏毅机器学习——深度学习反向传播算法
  13. 【C/C++】各种数据类型在16位、32位和64位系统下所占字节差异
  14. 《如何克服社交焦虑》- (美)埃伦·亨德里克森著;冯晓霞译
  15. 【网络】网络流:最大流最小割问题
  16. Word部分选项卡消失问题
  17. 在中关村创业大街Binggo这半年
  18. 团队的Kick off
  19. 做了个网页版的 五笔跟打器: 玫枫跟打器
  20. 关于Xsell共享文件输入网络凭据的解决办法

热门文章

  1. 22-09-02 西安 JVM 类加载器、栈、堆体系、堆参数调优、GC垃圾判定、垃圾回收算法、对象的finalize机制
  2. 基于jQuery的TreeGrid组件
  3. 主成分分析和因子分析的主要区别
  4. 三维数学基础2:矩阵、齐次坐标
  5. 嵌入式操作系统--篮球记分计时系统
  6. 并发编程:进程+线程+协程
  7. JOOQ学习笔记:分页、排序、字段重命名的写法
  8. ibm aix 抓包命令_在IBM AIX上模拟丢弃的TCP / IP数据包
  9. 对一个8位(一字节)数的倒序处理
  10. SAP ABAP-获取屏幕字段数据