2011-02-10 5 views
25

Sembra che ci siano un sacco di plugin di textarea con autogrow davvero pessimi per jQuery. Voglio che la mia casella di testo di autogrowing sia buona quanto quella di Facebook. Voglio che si adatti solo alla linea corrente e aggiungere una linea prima che sia necessaria.Qual è il miglior plug-in textarea con autogrow per jQuery?

La maggior parte dei plugin che ho esaminato provano a indovinare l'altezza della linea dal numero di caratteri, il che sembra troppo ingenuo. Ho letto una soluzione che crea un div nascosto per calcolare l'altezza. Sembra la strada giusta, ma quella soluzione non era in forma di plugin.

Cosa c'è là fuori che fa quello che voglio ed è facile da installare?

risposta

2

Ho un plug-in che calcola proprio questo: http://www.mostthingsweb.com/2012/01/textarea-line-count-version-1-3-released/. Usa l'approccio div nascosto e persino corrisponde agli attributi dei font corretti. Dai un'occhiata :)

Puoi invocare il plug-in ogni volta che un utente preme un tasto nella casella di testo e ridimensionare di conseguenza la casella di testo. Forse anche ogni altra chiave, se non vuoi incasinare la potenza di elaborazione.

0

hey questo è javascript puro

function sz(t) { 
    dv = document.createElement("div"); 
    dv.style.visibility="hidden"; 
    dv.style.position="absolute"; 
    dv.style.width=t.offsetWidth; 
    dv.innerHTML = t.value.replace(/\n/g, "<br>"); 
    document.body.appendChild(dv); 
    t.style.height=(dv.offsetHeight+22)+"px"; 
    dv.parentNode.removeChild(dv); 
} 

allora basta usare onkeyup = "sz (questo)"

+0

Non funziona! testo cose prima di pubblicare. – Naor

+6

^Leggi le cose prima di pubblicare. * Test –