1

この例の 'div' 要素の最初の子ノードは何ですか?

最初の「p」要素になると思いました。それは別のもののようですが。

<!DOCTYPE html>
<html>
<body>

<div id="myDiv">
<p>my first paragraph</p>
<p>my second paragraph</p>
</div>

<p id="demo1"></p>
<p id="demo2"></p>


<script>
document.getElementById("demo1").innerHTML = document.getElementById("myDiv").childNodes[0];

document.getElementById("demo2").innerHTML = document.getElementById("myDiv").childNodes[1].childNodes[0].nodeValue;


</script>

</body>
</html>


my first paragraph

my second paragraph

[object Text]

my first paragraph
4

1 に答える 1

1

親の先頭に空白があるためtextNode、コンテンツとして空白があります。ノードタイプを確認するためのnodeTypeプロパティ(3テキストノードを表す)を確認できます。

console.log(document.getElementById("myDiv").childNodes[0].nodeType)
<div id="myDiv">
  <p>my first paragraph</p>
  <p>my second paragraph</p>
</div>


子要素のみを取得するには、childrenプロパティを使用します。

document.getElementById("myDiv").children[0].textContent;

console.log(document.getElementById("myDiv").children[0].textContent)
<div id="myDiv">
  <p>my first paragraph</p>
  <p>my second paragraph</p>
</div>

于 2019-05-01T14:51:00.933 に答える