Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 以不同方式操作:gt()返回的每个元素-可能吗?_Jquery - Fatal编程技术网

Jquery 以不同方式操作:gt()返回的每个元素-可能吗?

Jquery 以不同方式操作:gt()返回的每个元素-可能吗?,jquery,Jquery,我返回前3个li元素,如下所示: $('li:*gt(0):lt(3)').animate({ 'left' : 10 }); 我想以不同的方式处理每个变量,现在我给每个变量一个left,值为10,但我希望第二个和第三个li的值分别为100和200 这可能吗?您可以使用。每个都可以检查索引: var animateValues = [10, 100, 200], $('li:*gt(0):lt(3)').each(function(i) { $(this).animate({

我返回前3个
li
元素,如下所示:

$('li:*gt(0):lt(3)').animate({
    'left' : 10
});
我想以不同的方式处理每个变量,现在我给每个变量一个
left
,值为
10
,但我希望第二个和第三个
li
的值分别为
100
200


这可能吗?

您可以使用
。每个
都可以检查索引:

var animateValues = [10, 100, 200],

$('li:*gt(0):lt(3)').each(function(i) {
    $(this).animate({
        'left' : animateValues[i % animateValues.length];
    });
});

为什么不使用
.each()
,然后相应地将元素作为目标。因为可能有100个li元素,它应该是3乘3。但是也可以将它们作为目标放在内部。请参见下面的答案。它允许我也使用实际的第一个元素,否则0将是第二个元素。
:*gt(0):lt(3)
与仅
:lt(3)
有什么不同?但是如果我有更多的li元素呢?是否可以使其动态检查索引?是的,这取决于您的规则。因此,在您的示例中,我如何检查
0、1、2
(因为返回的li元素是前3个)的索引,而不硬编码索引?您是否要为每个索引使用不同的规则?它本质上是围绕着将索引乘以一个设定的增量来适当地设置动画,第一秒和第三秒总是有它们自己的相同规则,如此类推。第一个左边是10,第二个100,第三个200,第四个10,第五个100,第六个200等等。