首页 > 代码库 > Dom深入浅出

Dom深入浅出

Dom1级提供了一个Node接口,该接口将由Dom中所有节点类型(包括元素节点、文本节点、属性节点等12种)实现,而js是作为Node类型来实现的,js中的所有节点类型的继承自Node类型,

所以它们拥有一些相同的基本属性和方法。(备注:12种类型节点中并不是所有节点都受到Web浏览器的支持,开发人员最常用的就是元素和文本节点)

如nodeType、nodeName、nodeValue属性(备注nodeName、nodeValue这两个属性值完全取决于节点类型,对元素节点来说,前者显示标签名,后者始终未null)。

节点关系:和家谱相似

每个节点都有一个childNodes属性,返回一个NodeList对象,该对象长的和数组一样.别且也有length属性返回子元素个数,访问子元素的方法有两种:[index]或者.item(index)

这里有一个坑需要注意:childNodes返回的是所有节点,包括文本节点,最坑爹的是空格也算是文本节点。所以不要使用这个属性。建议用children属性,只返回子元素节点。

 

Dom深入浅出