Return the HTML content of the first child node of an <ul> element:
document.getElementById("myList").firstChild.innerHTML;
Try it Yourself »
Get the text of the first child node of a <select> element:
let text = document.getElementById("mySelect").firstChild.text;
Try it Yourself »
More examples below.
The firstChild
property returns the first child node of a node.
The firstChild
property returns a node object.
The firstChild
property is read-only.
The firstChild
property is the same as childNodes[0]
.
firstChild
returns the first child node: An element node, a text node, or a comment node.
Whitespace between elements are also text nodes.
The firstElementChild Property
The firstElementChild
property returns the first child element (ignores text and comment nodes).
In the HTML DOM terminology:
Nodes are all nodes (element nodes, text nodes, and comment nodes).
Whitespace between elements are also text nodes.
Elements are only element nodes.
childNodes returns child nodes (element nodes, text nodes, and comment nodes).
children returns child elements (not text and comment nodes).
firstChild returns the first child node (an element node, a text node or a comment node). Whitespace between elements are also text nodes.
firstElementChild returns the first child element (not text and comment nodes).
lastChild returns the last child node (an element node, a text node or a comment node). Whitespace between elements are also text nodes.
lastElementChild returns the last child element (not text and comment nodes).
element.firstChild
node.firstChild
Type | Description |
Node | The first child of a node.null if no child exists. |
This example demonstrates how whitespace may interfere.
Try to get the node name of the first child node of "myDIV":
<div id="myDIV">
<p>Looks like first child</p>
<p>Looks like last Child</p>
</div>
<script>
let text = document.getElementById("myDIV").firstChild.nodeName;
</script>
Try it Yourself »
However, if you remove the whitespace from the source, there are no #text nodes in "myDIV":
<div id="myDIV"><p>First child</p><p>Last Child</p></div>
<script>
let text = document.getElementById("myDIV").firstChild.nodeName;
</script>
Try it Yourself »
element.firstChild
is a DOM Level 1 (1998) feature.
It is fully supported in all browsers:
Chrome | Edge | Firefox | Safari | Opera | IE |
Yes | Yes | Yes | Yes | Yes | 9-11 |
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!