当其他子元素也存在时,如何选择(在jquery中)第n个子div

时间:2014-07-16 10:26:09

标签: jquery

我有类似下面的html:

<div id="foo">
  <div>...</div>
  <p>...</p>
  <div>...</div>
  <p>...</p>
  <hr />
  <div>...</div>
  <div>...</div>
</div>

在&#34; foo&#34;的每个子div之间有零个或多个其他元素。我希望能够选择foo的第n个子div。

nth-child包含其他元素。例如:

$("#foo:nth-child(2)")

给我第一个p标签而不是第二个div。

2 个答案:

答案 0 :(得分:2)

尝试在此使用:nth-of-type(n)

$("#foo > div:nth-of-type(2)")

DEMO

答案 1 :(得分:2)

你的jquery将是

$("#foo").find('div:eq(1)')

更具体地说,如果child也包含另一个div,那么你将不得不使用子选择器。

$("#foo > div:eq(1)")

DEMO