如何在单个表达式中编写具有多个:eq的jQuery选择器?

我有一个快速的问题。 如何用多个:eq()选择器编写jQuery选择器表达式? 我想沿着DOM树走下去,但每个希望都不一致。 这是我的工作:

$('div:eq(0)').find('div:eq(1)').find('div:eq(5)') 

但以下是行不通的:

 $('div:eq(0) div:eq(1) div:eq(5)') 

没有所有的“发现”,是否有更优雅的方式来编写它?

我相信你可以做以下事情,它应该返回匹配的所有dom元素:

  $('div:eq(0), div:eq(1), div:eq(5)') 

然后你可以迭代返回的结果,希望这会有所帮助。

我使用each循环的解决方案:

 $.each([0, 1, 5], function(i, v) { $('div').eq(v) }); 

如果需要,可以将数组作为变量传递。 它看起来很漂亮,但如果你想要性能,这似乎击败了所有人:

 $('div').filter(':eq(0), :eq(1), :eq(5)') 

比较性能: http : //jsperf.com/jquery-selecting-elements-by-index/3