原型相当于jQuery eq方法

时间:2013-09-05 16:00:27

标签: javascript jquery prototypejs

给出以下html代码:

<ul id="fun">
    <li>One</li>
    <li>Two</li>
    <li>Three</li>
    <li>Four</li>
    <li>Five</li>
</ul>

我可以像这样在jquery中选择第三个li:

$('#fun li').eq(2);

在原型中,我知道我可以做类似的事情:

$("fun").select('li').each(function(i,v){
    if(v == 2){/*do whatever*/}
});

所以我要问的是,原型是否有像jquerys eq这样的方法,允许你在元素数组中选择一个特别索引的元素?

由于

3 个答案:

答案 0 :(得分:4)

以下是其他一些方法

$('fun').down(2);
//for the 2nd child of #fun no matter what element

$('fun').down('li',2)
//for the 2nd child <li> element

并且您不需要将结果包装在另一个$()中,因为元素结果已经扩展,down()方法只返回一个元素,因此您不需要添加数组索引[2]

http://api.prototypejs.org/dom/Element/prototype/down/

答案 1 :(得分:2)

好像你们忘记了$$

$$('#fun li')[2]

Fiddle

答案 2 :(得分:1)

$('#fun li').eq(2);

相当于:

$($('#fun li')[2]);

因此,您可以使用原生javascript来完成此任务。

$($("fun").select('li')[2]).whatever