簡體   English   中英

querySelectorAll並選擇特定的子代

[英]querySelectorAll and selecting specific children

假設我有下面的HTML

的HTML

<div class="container">
  <p>Test1</p>
  <p>Test5</p>
</div>

<div class="container">
  <p>Test3</p>
  <p>Test7</p>
</div>

我想通過香草javascript(Test5和Test 7)在每個.container選擇第二個孩子。

我該怎么做?

如果我這樣做

var container = document.querySelectorAll(".container p");
console.log(container[1]);

它只返回Test5而不是兩個容器中的第二個孩子

有什么建議么? 謝謝!

使用:nth-child選擇器:

 var secondChilds = document.querySelectorAll(".container p:nth-child(2)"); console.log(secondChilds); 
 <div class="container"> <p>Test1</p> <p>Test5</p> </div> <div class="container"> <p>Test3</p> <p>Test7</p> </div> 

使用ES6的另一種方法。 可能有點復雜-但效果很好。

 let elems = document.getElementsByClassName('container'); Array.from(elems).forEach(function(v){ v.children[1].style.color = 'blue'; }) 
 <div class="container"> <p>Test1</p> <p>Test5</p> </div> <div class="container"> <p>Test3</p> <p>Test7</p> </div> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM