Ich möchte eine Animation mit onscroll in Vanilla Javascript machen. Ich habe 2 Klassen. Die erste ist .photography_box welche aktiv ist und die zweite ist .photography_box_active welche nicht aktiv ist. Wenn ich bis zu 1500px nach unten scrolle, erscheint meine zweite Klasse .photography_box_active tritt ein und meine Animation funktioniert großartig. Meine .photography_box besteht aus 12 Boxen. Wenn die Animation passiert, kommen alle zur selben Zeit herein, was ich nicht will. Ich möchte, dass jeder von ihnen nacheinander kommt. In jQuery könnte ich $ .Each verwenden, aber ich möchte den gleichen Effekt mit Vanilla Javascript haben. Kann mir jemand helfen, das Problem zu lösen?Vanilla Javascript - Animation mit unterschiedlichen Timing
Dank
CSS-Code für meine Klassen:
.photography_box {
overflow: hidden;
position:relative;
cursor: pointer;
margin-bottom:20px;
opacity: 0;
cursor: pointer;
-webkit-transform:translateX(-50px);
transform:translateX(-50px);
-webkit-transition: all .3s ease-in-out;
transition: all .3s ease-in-out;
}
.photography_box_active {
opacity: 1;
-webkit-transform: translateX(0px);
transform: translateX(0px);
}
JS-Code ist:
var photoBox = document.getElementsByClassName("photography_box");
window.onscroll = function() {
loopBox()
};
function loopBox(){
if (window.pageYOffset > 1500){
for (f = 0; f <= photoBox.length -1; f++) {
photoBox[f].classList.add("photography_box_active");
};
};
};
können Sie eine 'setTimeout()' das Add der 'photography_box_active' Klasse zu verzögern? – brso05
Ich habe es versucht, aber es verzögert sich nur, und alles kommt zusammen. Ich möchte jeder mit unterschiedlichem Timing kommen. – NoName84
'setTimeout()' sollte funktionieren ... Bitte posten Sie, was Sie versucht haben. – brso05