ändern Ich brauche im Grunde fünf Kontrollkästchen, alle mit verschiedenen Farben. Was auch immer der Benutzer eingibt, nachdem er geklickt hat, muss auf dem Bildschirm als aufeinanderfolgende Farben gedruckt werden, basierend darauf, welche Kästchen aktiviert sind. Dh: Wenn blau und gelb markiert sind, ist das erste Wort blau und das zweite gelb, das dritte blau und das vierte gelb. Wenn drei Kästchen angekreuzt sind, wird ein Looping-Trio von Farben gesehen und so weiter bis zu 5 Kästchen!Wie Farbe der aufeinander folgenden Benutzer eingegebene Wörter basierend auf Kontrollkästchen
Mein Plan war, den Text zu nehmen, den der Benutzer schrieb, und es in ein Array zu setzen. Dann benutze ich eine for-Schleife, die ich inkrementieren und document.createElement('div')
verwenden und diese Wörter in einen Container (das Eltern-div) auf dem Körper anhängen soll.
function colourCode() {
var userArray = [];
var userText = document.getElementById("textArea").value;
userArray.push(userText);
var container = document.getElementById("container");
for (var i = 0; i < userArray.length; i++) {
var div = document.createElement("div");
div.innerHTML = (userArray[i]);
container.appendChild(div);
Dies funktioniert gut.
Dann wollte ich eine if-Anweisung verwenden, um die Farbe zu ändern, wenn das Kontrollkästchen aktiviert ist.
Dies ändert die gesamte sentance blau, auch wenn andere Boxen überprüft werden. Tatsächlich ändert sich die Farbe in das Feld, das zuerst geprüft wird.
Ich dachte darüber nach, irgendwie einen Modulo-Operator zu implementieren, der die Kästchen gleichzeitig durchlaufen könnte, wenn das Wort vom Array angehängt wird, aber keine Ahnung wie.
Wer hat irgendwelche Ideen?
Auch jQuery ist nicht eine Option!