Quando mancano 20 caratteri il colore predefinito del contatore cambia e diventa "prerosso", se però a 20 cancello un qualche carattere e rientro nei 20, il colore del contatore non ridiventa colore predefinito ma rimane sempre "prerosso". Praticamente non ridiventa colore predefinito.
Mentre invece per il secondo codice, quello che fa diventare il contatore rosso, è tutto a posto, se vado sotto 10 diventa rosso, se rientro nei 10 ridiventa il colore precedente e cioè "prerosso"
Codice PHP:
function conta(el) {
var max_char = 50; // Limite massimo di caratteri consentiti
var conta_caratteri = el.value.length;
if(conta_caratteri >= max_char) {
conta_caratteri = max_char;
el.value = el.value.substring(0, max_char);
}
document.getElementById("Contatore").innerHTML = max_char - conta_caratteri;
if(max_char - conta_caratteri < 20) { // A 20 caratteri rimanenti il contatore diventa #a60101
document.getElementById("charCount").className = 'prerosso';
}
document.getElementById("Contatore").innerHTML = max_char - conta_caratteri;
if(max_char - conta_caratteri < 10) { // A 10 caratteri rimanenti il contatore diventa rosso
document.getElementById("charCount").className = 'rossi';
}
...
<div id="charCount">Rimanenti 50 caratteri</div>
}