2010-07-27 6 views
22

Ho un textarea con il testo Hello World. Mi piacerebbe ottenere l'altezza di questo testo.Come ottenere l'altezza del testo all'interno di un'area testo

Ho provato ad utilizzare:

var element = document.getElementById('textarea'); 
var textHeight = element.innerHTML.offsetHeight; 

e:

var textHeight = element.value.offsetHeight; 

Ma questi non danno i numeri del testo, ma l'altezza dell'elemento textarea.

risposta

16

Creare un elemento span, impostare Span's innerHTML su "Hello World".
Ottieni l'offset spanAltezza.

var span = document.createElement("span"); 
span.innerHTML="Hello World"; //or whatever string you want. 
span.offsetHeight // this is the answer 

nota che è necessario impostare lo stile del carattere di span sullo stile del carattere del textarea.

L'esempio non funzionerà MAI perché innerHTML e value sono entrambe stringhe. String non definisce offsetWidth.

Se si desidera ottenere l'altezza del testo selezionato all'interno di un'area di testo, utilizzare selectionStart/selectionEnd per trovare il testo selezionato dell'area di testo.

+0

aham quindi dovrei creare un '' all'interno di '