编辑这个页面须要登录或更高权限!
firstChild只读属性返回指定节点的第一个子节点,作为一个Node对象。
如果指定的节点没有子节点,则此方法将返回空值。
元素内部的空白被视为文本,而文本被视为节点。注释也被视为节点。
为了避免firstChild返回#text或#comment节点的问题,可以使用firstElementChild仅返回第一个元素节点。
要返回指定节点的最后一个子节点,请使用lastChild属性。
node.firstChild
<div> <p>这是DIV里面的第1个P</p> <p>这是DIV里面的第2个P</p> <p>这是DIV里面的第3个P</p> </div> <script> var x = document.querySelector("div").firstChild.nodeName; document.getElementById("result").innerHTML = x; </script>测试看看‹/›
但是,如果我们删除DIV和第一个P元素之间的空格,则返回值将是P标签而不是#text:
<div><p>这是DIV里面的第1个P</p> <p>这是DIV里面的第2个P</p> <p>这是DIV里面的第3个P</p> </div> <script> var x = document.querySelector("div").firstChild.nodeName; document.getElementById("result").innerHTML = x; </script>测试看看‹/›
所有浏览器完全支持firstChild属性:
属性 | |||||
firstChild | 是 | 是 | 是 | 是 | 是 |
返回值: | 一个Node对象,表示节点的第一个子节点;如果没有子节点,则为null |
---|---|
DOM版本: | DOM级别1 |
HTML DOM参考:node .lastChild属性
HTML DOM参考:node .childNodes属性
HTML DOM参考:node .parentNode属性
HTML DOM参考:node .nextSibling属性
HTML DOM参考:node .previousSibling属性
HTML DOM参考:node .nodeName属性