1

我拼命地尝试element与 index-selector结合使用eq()。语法有什么问题吗?

function setVisibleRange(element) {
    for ( -- something with i -- ) {};
     $(element:eq(i).show();
};

setVisibleRange($("ul li")); 

顺便说一句,有没有更好的方法来处理一系列元素?像eq(0, 4)什么?for 循环只是一种解决方法。

谢谢

4

3 回答 3

2

您可以eq使用.运算符调用元素,

现场演示

function setVisibleRange(element) {
    for ( i=0; i < element.length; i++)
        element.eq(i).show();
};
于 2012-12-07T11:34:29.317 回答
2
function setVisibleRange(element) {
    for (var i=element.length; i--;) {
        element.eq(i).show();
    }
}

setVisibleRange($("ul li")); 

对于类似的事情eq(0, 4),我会这样做:

$("ul li:lt(5)").show();
于 2012-12-07T11:38:07.953 回答
1

关于组合变量和文本:

$(element + ':eq(' + i + ')')

您也可以使用自定义过滤器功能。jQuery 过滤器

于 2012-12-07T11:50:45.403 回答