Notizie: lo sai che puoi installare Firefox anche su dispositivi Apple iPhone e iPad? Provalo subito!

Autore Topic: Textarea da problemi barra laterale  (Letto 640 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline Fireuser

  • Post: 128
Textarea da problemi barra laterale
« il: 22 Agosto 2012 02:51:30 »
Il textarea è impostato col css overflow: auto;, quando arrivo in fondo col testo e digito, la barra inizia a vibrare, questo solo con FF 14.0.1, con safari, opera e chrome non lo fa

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Textarea da problemi barra laterale
« Risposta #1 il: 22 Agosto 2012 13:19:46 »
Hai il link alla pagina che ti dà problemi?
Hai già provato in <Modalità provvisoria>?

Offline Fireuser

  • Post: 128
Re: Textarea da problemi barra laterale
« Risposta #2 il: 22 Agosto 2012 13:25:11 »
Hai il link alla pagina che ti dà problemi?
Hai già provato in <Modalità provvisoria>?

Io uso Mac.

Clicca su Contatti, e nel form che appare riempilo fino a 500 caratteri, vedrai che dagli ultimi 20 il contatore diventa rosso, è da questo punto che la barra laterale del textarea inizia a vibrare http://www.bellezzalive.altervista.org/
« Ultima modifica: 22 Agosto 2012 13:27:33 da Fireuser »

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Textarea da problemi barra laterale
« Risposta #3 il: 22 Agosto 2012 14:12:46 »
Citazione
Io uso Mac.

Prova a leggere l'articolo linkato…

Offline Fireuser

  • Post: 128
Re: Textarea da problemi barra laterale
« Risposta #4 il: 22 Agosto 2012 14:20:45 »
Citazione
Io uso Mac.

Prova a leggere l'articolo linkato…


Ho disattivato tutto, ma il problema non si è risolto

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Textarea da problemi barra laterale
« Risposta #5 il: 22 Agosto 2012 16:25:32 »

Offline Fireuser

  • Post: 128
Re: Textarea da problemi barra laterale
« Risposta #6 il: 22 Agosto 2012 16:36:59 »
Prova a usare l'attributo HTML5 maxlength come indicato qua:
http://stackoverflow.com/questions/7642849/javascript-function-to-limit-chars-in-a-textarea-causing-refresh-problems-in-f

Nel mio script ho già un controllo dei caratteri max inseribili, questo script è fatto in modo che visualizza un contatore a scalare dei caratteri inseriti.

Quando i caratteri rimanenti sono 20, il contatore diventa rosso ed è a questo punto che la barra inizia a saltare. Però lo fa solo se i caratteri sono arrivati in fondo al textarea.

Es: se io imposto caratteri max inseribili su 30, a 20 il contatore diventa rosso, ma non sballa niente perché la barra non è ancora apparsa.

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Textarea da problemi barra laterale
« Risposta #7 il: 22 Agosto 2012 16:40:34 »
Si, credo sia uno script simile a quello usato dall'utente di stackoverflow, probabilmente è lo script che dà il problema.
Io non ti saprei dire come risolvere, magari aspettiamo qualcuno più esperto del sottoscritto.
Comunque, visto che il problema sembra esserci, usare HTML5 al posto dello script potrebbe essere una soluzione (risparmi anche codice JS).

Offline Fireuser

  • Post: 128
Re: Textarea da problemi barra laterale
« Risposta #8 il: 22 Agosto 2012 16:58:52 »
Si, credo sia uno script simile a quello usato dall'utente di stackoverflow, probabilmente è lo script che dà il problema.
Io non ti saprei dire come risolvere, magari aspettiamo qualcuno più esperto del sottoscritto.
Comunque, visto che il problema sembra esserci, usare HTML5 al posto dello script potrebbe essere una soluzione (risparmi anche codice JS).

Quel codice che dici tu, c'è lho già scritto in un altro modo, ma sono uguali


Offline Fireuser

  • Post: 128
Re: Textarea da problemi barra laterale
« Risposta #10 il: 23 Agosto 2012 12:17:58 »
Non sono abbastanza esperto di Javascript, ma ho provato diversi form e tutti mi funzionano correttamente:
http://www.virtuosimedia.com/dev/javascript/mootools-plugins/word-count/demos
http://forum.html.it/forum/showthread.php?threadid=1462421
http://line25.com/tutorials/create-a-stylish-contact-form-with-html5-css3
http://cssglobe.com/lab/charcount/01.html

Il mio problema si presenta solo con FF quando il contatore arriva a 20 rimanenti e diventa rosso, ho provato a togliere -20 e la barra del textarea non vibra più

Codice: [Seleziona]
//Caratteri max inseribili nel campo MESSAGGIO (compresi gli spazi)
charCount = 1;
maxCharCount = 2000;
function displayRemLength(fieldName) {
remField = document.getElementById(fieldName);
remField.innerHTML = (maxCharCount - charCount > 0) ?  // Quando il contatore arriva al num. impostato qui,
//mostrerà CONTINUO quello impostato sotto, in questo caso "0"  
maxCharCount - charCount : 0;  // Quando il contatore arriva in fondo, apparirà questo numero
}
function evalEntryLength(curField, maxLimit, discardXtra, errClass, normalClass) {
maxCharCount = maxLimit;  
var fieldLength = getCharCount(curField);
if (fieldLength > maxLimit - 20) { if (errClass != "") {    // A 20 caratteri rimanenti il contatore diventa rosso
document.getElementById('contSX').className = errClass;
document.getElementById('charCountParole').className = errClass;  
document.getElementById('charCount').className = errClass;
}
if (discardXtra) {
showAllowedLength(curField, maxLimit);
}
}
else if (normalClass != "") {
curField.className = normalClass;
}
}
function getCharCount(curField) {
charCount = curField.value.length;
return charCount;
}
function showAllowedLength(curField, maxLimit) {
curField.value = curField.value.substr(0, maxLimit);
window.status = curField.value;
}

<div id="contSX">
<span class="testoMess">Testo</span><span class="asterisco1">&nbsp;*</span>
<br />
<br />
<span id="charCountParole">Rimanenti&nbsp;<span class="numero"><span id="charCount">100</span></span>
    <br />
    caratteri</span>
    </div>

<textarea name="messaggio" id="txtScrivimi1" cols="0" rows="0" onkeyup="evalEntryLength(this, 100, true, 'UltimiCaratteri',' '); displayRemLength('charCount');" onblur="this.value=this.value.replace(/[\s]*/,'')"><?php echo($_SESSION['messaggio'])?></textarea>


Offline RNicoletto

  • Post: 2209
    • MondoWin
Re: Textarea da problemi barra laterale
« Risposta #11 il: 23 Agosto 2012 13:07:27 »
Una domanda: ma ti non ti conviene appoggiarti a qualche sito esterno per questo tipo di attività? Ad esempio FoxyForm, FreeContactForrm o simili?

Offline Fireuser

  • Post: 128
Re: Textarea da problemi barra laterale
« Risposta #12 il: 24 Agosto 2012 08:54:07 »
Una domanda: ma ti non ti conviene appoggiarti a qualche sito esterno per questo tipo di attività? Ad esempio FoxyForm, FreeContactForrm o simili?

Questo funziona con FF, la barra del textarea vibra solo quando il contatore arriva a zero

Codice: [Seleziona]
function conta(el) {
var max_char = 500; // 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 rosso
document.getElementById("charCount").className = 'rossi';
document.getElementById("Contatore").className = 'rossi';
}
 }  

0 Utenti e 1 Visitatore stanno visualizzando questo topic.