Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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
Javascript jquery-如何将一系列css属性更改排队_Javascript_Jquery_Css_Delay_Jquery Animate - Fatal编程技术网

Javascript jquery-如何将一系列css属性更改排队

Javascript jquery-如何将一系列css属性更改排队,javascript,jquery,css,delay,jquery-animate,Javascript,Jquery,Css,Delay,Jquery Animate,我想设置一系列动画属性-一个当前不可见但将被标记为可见的名称列表,一个接一个,彼此之间的设置延迟约为100ms。如何使用jquery实现这一点?本质上,它类似于以下伪代码: for each $(.item) { $(this).delay(index*100ms).css({'visibility': 'visible'} } 唯一可能使这一点复杂化的是,虽然大多数元素都具有相同的类,但并非所有元素都具有相同的类,因此某种类型的动画队列工作得最好 您可以使用来执行此操作 $('#foo').

我想设置一系列动画属性-一个当前不可见但将被标记为可见的名称列表,一个接一个,彼此之间的设置延迟约为100ms。如何使用jquery实现这一点?本质上,它类似于以下伪代码:

for each $(.item) {
$(this).delay(index*100ms).css({'visibility': 'visible'}
}
唯一可能使这一点复杂化的是,虽然大多数元素都具有相同的类,但并非所有元素都具有相同的类,因此某种类型的动画队列工作得最好

您可以使用来执行此操作

$('#foo').slideUp(300).delay(800).fadeIn(400);
执行此语句时,元素向上滑动300毫秒,然后暂停800毫秒,然后淡入400毫秒

实际上,您希望对多个项目执行一项操作,因此我将这样做:

$.each($(".a"), function(index, value) {
    $(this).delay(index*400).fadeOut(400);
});
您使用伪代码的轨迹是正确的,您需要在某个时候按索引*偏移每个动画

事实证明,.delay实际上不适用于css,因此更新的解决方案:

$.each($(".a"), function(index, value) {
    $(this).delay(index*400).queue( function(next){ 
        $(this).css('visibility','visible'); 
        next(); 
      });
});

谢谢,但这将发生在一系列不同的元素上,而不是对同一元素的不同更改。啊,是的,这就是我不确定的。我会马上更新我的答案。等等,你不想把某个东西变成多个项目,或者把多个东西变成一个?