我正在尝试遍历和Div ID数组,然后一个接一个地更改其CSS(背景色)。我知道如何遍历数组,但都可以选择它们,并且可以一次性添加CSS(我唯一的问题是延迟效果,以便每个div接一个而不是一次更改。)有点帮助将不胜感激。

    $("#light").click(function(){

            for (var i=0; i < randomArray.length; i++) {

                $("#" + randomArray[i]).css("backgroundColor", "Black"); //How not to change the color at once, but one by one?//

            }
        });

最佳答案

或者,您可以使用CSS动画延迟,它更干净,更快。

var randomArray = ["elem1", "elem2", "elem3"];

$("#light").click(function(){

     for (var i=0; i < randomArray.length; i++) {

         $("#" + randomArray[i]).addClass("fade-"+i);

     }
});


现在您有了一个类列表,例如:fade-1,fade-2,fade-3。

在CSS中:

.fade-0,.fade-1,.fade-2{
   background-color: black;
   transition: background-color 1s;
}
.fade-1{
   transition-delay: 1s;
}
.fade-2{
   transition-delay: 2s;
}

关于javascript - 遍历Div ID数组并更改其CSS(一对一),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41778745/

10-11 05:35