Ich habe vier Audios. Sagen wir s1, s2, s3 und s4. Ich habe auch eine Variable mit zufälligen ganzen Zahlen zwischen eins und vier, zum Beispiel myVar = [2, 1, 3, 4]. Es kann länger oder kürzer als vier sein, aber die ganzen Zahlen sind immer zwischen eins und vier.Play klingt nacheinander mit Schleife
Ich möchte einen Zyklus machen, der auf myVar aussehen wird und meine Sounds in der entsprechenden Reihenfolge (in diesem Fall: s2, s1, s3, s4) spielen. Ein Ton nach dem anderen, das ist sehr wichtig. Nicht alles auf einmal.
Alle meine Lösungen spielen die Sounds auf einmal so weit. Ich weiß, dass es einige ähnliche Fragen gibt, aber ich bin so schlecht in JavaScript, dass ich die Antworten nicht verwenden konnte. Jeder weiß, wie es geht?
Einer aktuellen Lösungen (funktioniert nicht):
function recTime (i) {
if (i === myVar.length) return;
if (myVar[i] === 1) {
setTimeout(function() {
s1.play();
return recTime(++i);
},350);}
else if (myVar[i] === 2) {
setTimeout(function() {
s2.play();
return recTime(++i);
},350);
}
else if (myVar[i] === 3) {
setTimeout(function() {
s3.play();
return recTime(++i);
},350);
}
else if (myVar[i] === 4) {
setTimeout(function() {
s4.play();
return recTime(i++);
},350);
}
}
I call it in this cycle:
for (var i = 0; i < stimuli.length+1; ++i){
recTime(i);
}
Ja, ich werde es unter die Frage stellen. –