06.04.2024, 08:04
An dieser Stelle wir die Farbe auf grün gesetzt:
d. h. wenn der Wert kleiner als 0 ist.
Wenn wir das setColor hinter die Schleife verschieben, wird nur das aktuelle Eingabefeld gesetzt, nicht alle:
Das müsste dann das sein, was Du wünschst.
Code:
// Schriftfarbe abhängig vom Wert einstellen:
function setColor(input, val) {
if (val < 0) {
input.style.color = "#00CC99"; //<-- das dürfte grün sein
} else if (val == 0) {
input.style.color = "#000000";
} else if (val > 0) {
input.style.color = "#FF3300";
}
}
Wenn wir das setColor hinter die Schleife verschieben, wird nur das aktuelle Eingabefeld gesetzt, nicht alle:
Code:
inputsInRow.forEach(input => {
const
// Zunächst den eingegebenen Wert
// als Integer bereit stellen:
val = parseInt(input.value);
// Wenn es sich nicht um ein Summenfeld selber handelt:
// Wert auf die Summe aufaddieren:
if (!input.classList.contains('sum') &&
!input.classList.contains('total-sum')) {
sum += parseInt(input.value);
}
});
setColor(input, val);
// Summe in das Ausgabefeld eintragen:
sumField.value = sum;
setColor(sumField, sum);
Glaube denen, die die Wahrheit suchen, und zweifle an denen, die sie gefunden haben.
(Andrι Gide (1869-1951), frz. Schriftst., 1947 Nobelpreis)
(Andrι Gide (1869-1951), frz. Schriftst., 1947 Nobelpreis)