Neudobje razredov v JavaScriptu

Recimo, da imamo več razredov za oblikovanje sporočil:

css.success {
  color: green;
}
.warning {
  color: orange;
}
.error {
  color: red;
}

Recimo, da smo v nekem elementu prikazali uspešno sporočilo in mu dodelili ustrezni razred za uspeh:

javascriptelem.classList.add('success');

Recimo zdaj, da smo v tem istem elementu prikazali sporočilo o napaki in mu dodelili ustrezni razred za napako:

javascriptelem.classList.add('error');

Kot rezultat se bo izkazalo, da bo imel element dva razreda, ki si nasprotujeta:

html<div id="elem" class="success error">
  text
</div>

Izkazalo se je, da bomo morali pred dodajanjem novega razreda najprej odstraniti prejšnjega:

javascriptelem.classList.remove('success');
elem.classList.add('error');

To ni zelo priročno, saj morda ne vemo, kateri točno je bil prejšnji razred in bomo morali odstraniti vse razrede zaporedoma:

javascriptelem.classList.remove('success');
elem.classList.remove('warning');
elem.classList.add('error');
Задание 1

Podan je vnos. Ob izgubi fokusa preverite, ali vanj ni vnesenih več kot 9 znakov. Če je tako, pobarvajte obrobo vnosa v zeleno barvo, če ni - v rdečo.