1、childNodes属性:

返回指定元素的子节点集合,包括元素节点和文本节点。

除了IE9和Firefox,其他浏览器都支持通过childNodes[i]获取第i个子节点。

2、children属性:

返回指定元素的子元素集合,只包括元素节点,不包括文本节点。

除了IE9和Firefox,其他浏览器都支持通过children[i]获取第i个子节点。

注意:children在IE中包含注释节点。

3、firstChild属性:

获取指定元素的第一个子节点,可以是元素节点,也可以是文本节点。

问题:若父元素与第一个子元素之间存在空白节点,firstChild获取到的将是空白节点而不是第一个子元素。

解决:使用firstElementChild属性。

问题:IE6/7/8中不支持firstElementChild属性。

解决:使用children[0]属性。

4、firstElementChild属性:

获取指定元素的第一个子元素节点,不会检测到文本节点。

总结:

如果想获取到指定元素的子元素节点,最好使用children方法,childNodes方法及firstChild方法在现代浏览器中都会把空白节点检测出来,所以推荐以后使用children方法来替代childNodes。

浅谈childNodes和children以及firstChild和firstElementChild相关推荐

  1. childNodes和children,firstChild和firstElementChild,lastChild和lastElementChild的区别

    首先,我们给出HTML的代码 <ul id='city'><li>北京</li><li>南京</li><li>东京</li ...

  2. js中firstChild与firstElementChild及childNodes与children的区别

    firstChild: 获取指定元素的第一个子节点 (包括元素节点和文本节点) . 若父元素与第一个子元素之间存在空白节点,firstChild 获取到的将是空白节点而不是第一个子元素.这时可以使用 ...

  3. firstElementChild firstChild 以及childNodes和children方法

    [转]js下firstElementChild,firstChild ,childNodes,children 一. <div><p>123</p> </di ...

  4. 浅谈浏览器的兼容性(从HTML、CSS、JS、PC端、移动端等方面)

    浅谈浏览器的兼容性) 前言 一.HTML部分 a.html5的新标签 b.img的alt属性 c.ul标签内外边距问题 二.css部分 a.css的hack问题:主要针对IE的不同版本,不同的浏览器的 ...

  5. JavaScript 中的 require / exports、import / export、浅谈JavaScript、ES5、ES6

    Node.js 的基础教学 之 exports 和 module.exports:https://zhuanlan.zhihu.com/p/82057593 浅谈 JavaScript.ES5.ES6 ...

  6. 浅谈前端自动化构建 -- Grunt、Gulp、FIS

    前言 笔记来源:拉勾教育 大前端高薪训练营 阅读建议:内容较多,建议通过左侧导航栏进行阅读 前端自动化构建 基本介绍 一切重复工作本应自动化.将开发中的源代码,自动化的转换成生产环境中可以运行的程序, ...

  7. html代码id,浅谈html中id和name的区别实例代码

    浅谈html中id和name的区别实例代码 更新时间:2008年07月28日 23:00:55   作者: 这个是form里面的name与id的区别 我们可以通过一段代码来分析一下其中的微妙差别: 在 ...

  8. 浅谈jQuery Mobile设计思想

    来自51CTO技术社区:http://mobile.51cto.com/others-288591.htm jQuery Mobile设计思想是本文要介绍的内容,主要是来了解jQuery Mobile ...

  9. 浅谈umi router

    浅谈umi router 前言 基础路由 layout 前言 最近学习UmiJS,在umi-router上踩了许多坑,现记录下所学. 基础路由 假设 pages 目录结构如下: + pages/+ u ...

最新文章

  1. jdk8中流的使用(一)
  2. 一键生成CSDN文章的思维导图目录
  3. mysql1033错误存储引擎_【Mysql问题集锦(1)】mysql不能使用innodb存储引擎
  4. 不忘本~委托和事件(续)
  5. 创建多级目录函数MakeSureDirectoryPathExists()所需头文件
  6. linux系统服务命令systemctl使用说明
  7. 20应用统计考研复试要点(part37)--概率论与数理统计
  8. Leetcode143. Reorder List重排链表
  9. Python3+TensorFlow人脸识别:1-1课程导学
  10. wordpress linux伪静态,nginx下wordpress伪静态设置
  11. JavaScript-bind-call-apply改变this指向
  12. Android 圆形颜色拾取器代码,android 颜色拾取控件 ColorPickerDialog
  13. 阿里云ECS迁移至腾讯云
  14. 如何将纸质书怎么弄成电子版?如何将纸质文档变成电子文档,下面教你方法
  15. B002 - 基于嵌入式的老人定位追踪监测仪
  16. 【渝粤题库】国家开放大学2021春2721乡镇行政管理题目
  17. logback配置文件---logback.xml详解
  18. 【网页图标】favicon.ico文件的设置
  19. 关于VMWare中的vmem文件
  20. layui实现后台管理系统界面(亲测可用)

热门文章

  1. 嗜血的硅谷与Hygge的欧洲
  2. 如何减小电压跟随器输出电阻_如何看懂稳压电路,看完这篇文章你就知道了
  3. 2.16 这些都是我常用的修图工具【玩赚小红书】
  4. 自动化测试面试追命十问
  5. 攻防世界【favorite_number】解题方法
  6. Windows11 22H2将文件传输速度减慢了40% 如何解决?
  7. 免费虚拟主机怎么申请?
  8. ffplay自定义播放器封装C#接口
  9. 我的10年软件情缘--2001到2011
  10. 2011年数学建模国赛A题(土壤重金属检测)优秀论文.doc