我有这样的结构:
<div>
<a></a>
<p></p>
<p></p>
</div>
而且我所有的 p 都已经在一个真实的数组中了:
var p = [].slice.call( document.querySelectorAll('div p') );
我可以使用第一个项目,p[0]
但我需要first-child
(在这种情况下是相同的)所以我尝试了querySelectorAll
,但这样做没有得到任何结果:
p.forEach(function( el ) {
console.log( el.parentNode.querySelectorAll('p:first-child') ) //=> empty
});
如果我这样做,el.parentNode.querySelectorAll(':first-child')
我会得到<a>
这不是我想要的。如何过滤first-child
数组中的 p?
编辑:我尝试创建一个虚拟元素并使用克隆重新创建结构以找到我的元素,虽然它有点工作我不确定这是最好的主意......