JavaScript 中的 firstChild 属性

发布于 2023-02-08 19:41:18 字数 1581 浏览 117 评论 0

firstChild 属性包含 DOM 节点的第一个子 DOM 节点,它可以是类型 text, comment 或者 element。例如,下面的代码更改了第一个中的文本 <li> 元素从 Gas 到 Water。

<ul><li>Gas</li><li>Food</li></ul>
<script>
  const list = document.querySelector('#example');
  list.firstChild.innerHTML = 'Water';
</script>

使用时空格很重要 firstChild,下面的例子没有 预期工作,因为 firstChild 返回一个包含空格的文本节点 <ul> 和第一个 <li>

<ul>
  <li>Gas</li>
  <li>Food</li>
</ul>
<script>
  const list = document.querySelector('#example');
  // `firstChild` below is a text node containing whitespace, **not** the first `<li>`
  list.firstChild.innerHTML = 'Water';
</script>

您可以使用 firstElementChild 属性来避免这个问题,并获取第一个 DOM 元素节点,忽略文本节点。

<ul>
  <li>Gas</li>
  <li>Food</li>
</ul>
<script>
  const elem = document.querySelector('#firstElemChild');
  elem.firstElementChild.innerHTML = 'Water';
</script>

如果 DOM 节点没有子节点, firstChild 包含 null

<div></div>
<script>
  // Prints "null"
  console.log(document.querySelector('#example1').firstChild);
</script>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

清晨说晚安

我之所以活到现在的全部意义,是为了此刻能对你说,我爱你,我会在你身后永远守护你。

0 文章
0 评论
21958 人气
更多

推荐作者

玍銹的英雄夢

文章 0 评论 0

我不会写诗

文章 0 评论 0

十六岁半

文章 0 评论 0

浸婚纱

文章 0 评论 0

qq_kJ6XkX

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文