javascript中children和childNodes的区别是什么?

2024-12-21 18:21:47
推荐回答(1个)
回答1:

childNodes:获取节点,不同浏览器表现不同;

IE:只获取元素节点;

非IE:获取元素节点与文本节点;

hildren:获取元素节点,浏览器表现相同。

因此建议使用children。

1,childNodes:它是标准属性,它返回指定元素的子元素集合,包括HTML节点,所有属性,文本节点。

可以通过nodeType来判断是哪种类型的节点,只有当nodeType==1时才是元素节点,2是属性节点,3是文本节点。

children:非标准属性,它返回指定元素的子元素集合。

但它只返回HTML节点,甚至不返回文本节点,虽然不是标准的DOM属性,但它和innerHTML方法一样,得到了几乎所有浏览器的支持。

和childNodes 一样,在Firefox下不支持()取集合元素。因此如果想获取指定元素的第一个HTML节点,可以使用children[0]来替代上面的getFirst函数。