Javascript 数组的反向特定部分

Javascript 数组的反向特定部分,javascript,jquery,arrays,gsap,Javascript,Jquery,Arrays,Gsap,每当你到达部分中的某个特定部分时,我都会尝试实现一个小点动画。然而,我在制作动画的元素数组中的顺序上遇到了一些问题,请参见下面或下面的内容。正如您所看到的,当我删除middle.reverse()时,顺序是关闭的顺序理论上是正确的,但我需要反转中间部分,否则动画没有多大意义: console.log($); $(文档).ready(函数(){ 变量表=$(''); var stepWrapper=$(''); 对于(变量i=0;i

每当你到达
部分中的某个特定部分时,我都会尝试实现一个小点动画。然而,我在制作动画的元素数组中的顺序上遇到了一些问题,请参见下面或下面的内容。正如您所看到的,当我删除
middle.reverse()时,顺序是关闭的顺序理论上是正确的,但我需要反转中间部分,否则动画没有多大意义:

console.log($);
$(文档).ready(函数(){
变量表=$('');
var stepWrapper=$('');
对于(变量i=0;i<7;i++){
var tr=$('');
对于(var j=0;j3){
td.addClass(“活动的最后一个”);
}
tr.append(td);
}
表3.追加(tr);
}
stepWrapper.append(表);
$('section')。每个(函数(){
var clone=stepWrapper.clone();
$(此).append(克隆);
});
$(窗口)。滚动(函数(){
$('section.steps wrapper')。每个(函数(){
if($(窗口).scrollTop()>$(此).offset().top-$(窗口).height()/2&&!$(此).hasClass('active')){
$(this.addClass('active');
var first=[],
中间=[],
最后=[];
$(this).find('td.active').each(function(){
if($(this).hasClass('first')){
首先,推动($(这个));
}else if('middle'){
中推($(本));
}else if('last')){
最后。推送($(此));
}
});
中。反();
var组合=第一个concat(中间,最后);
TweenMax.交错至(组合,0.5{
自动α:1,
放松:回来,放松
}, 0.2);
}
});
});
});
部分{
高度:100vh;
宽度:100vw;
位置:相对位置;
}
.步骤包装{
位置:绝对位置;
宽度:100%;
底部:-150px;
}
桌子{
保证金:0自动;
}
tr{}td{
宽度:40px;
高度:40px;
不透明度:0;
可见性:隐藏;
}
tr:n第四个孩子(4)td:before,
tr:N个孩子(1)td:last child:before,
tr:N个孩子(2)td:last child:before,
tr:N个孩子(3)td:last child:before,
tr:n个孩子(5)td:第一个孩子:之前,
tr:n个孩子(6)td:第一个孩子:之前,
tr:N个孩子(7)td:第一个孩子:之前{
内容:'';
宽度:5px;
高度:5px;
显示:块;
利润率:15px自动;
背景:黑色;
边界半径(50%);
}


您在这里检查的是什么样的
else if('middle'){
。?它不应该是if
else if($(this).hasClass('middle')吗
最后一次比较也是如此。这不是开关箱。啊,完全忽略了这一点,谢谢你解决了我的问题,如果你把它作为答案发布,我会接受的!很高兴你修复了它。而且最好记住$(这)部分是为了防止浪费冗余的jQuery调用。似乎您在该函数中多次使用它。是的,我有一些清理工作要做,再次感谢!