document.getElementById('container').addEventListener('click', (e) => {
    const children = [...document.getElementsByClassName('profile')];
}


如何访问每个带有img标签的孩子的子节点?

我想做类似的事情

children.child.node('img').indexOf(e.target)

<div id="container">
  <div class="profile">
    <img src="" />
  </div>
  <div class="profile">
    <img src="" />
  </div>
  <div class="profile">
    <img src="" />
  </div>
  <div class="profile">
    <img src="" />
  </div>
  <div class="profile">
    <img src="" />
  </div>
    <div class="profile">
    <img src="" />
  </div>
</div>

最佳答案

无需数组操作,可以使用查询字符串.profile > img选择img,这些.profile是的直接子代:



const imgs = [...document.querySelectorAll('.profile > img')];
console.log(imgs.length);

<div id="container">
  <div class="profile">
    <img src="" />
  </div>
  <div class="profile">
    <img src="" />
  </div>
  <div class="profile">
    <img src="" />
  </div>
  <div class="profile">
    <img src="" />
  </div>
  <div class="profile">
    <img src="" />
  </div>
  <div class="profile">
    <img src="" />
  </div>
</div>

关于javascript - 获取包含特定标记的节点的子代-JavaScript,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54897114/

10-14 04:37