2011-12-11 17 views
29
<h2>Greetings</h2> 
<div class="container"> 
    <div class="inner"> 
    Hello 
    <p>Test</p> 
    </div> 
    <textarea id="one" class="inner"> 
    Goodbye 
</textarea> 
</div> 

$("#one").append("your text to append"); 
$("#one").append("your text to append"); 
$("#one").append("your text to append"); 
$("#one").append("your text to append"); 

VIVO: http://jsfiddle.net/tGFmq/en el área de texto con jQuery

Cómo puedo hacer que se desplace automáticamente a abajo en esta área de texto?

+1

¿Y usted está seguro de que no hay preguntas previas sobre este tema ...? –

+0

Acabo de hacer una búsqueda en Google y esta pregunta apareció como primer resultado, así que incluso si hay 100 preguntas como las que Google piensa que vale la pena clasificarlo # 1 – Chris

+1

¿google puede pensar? – DrLazer

Respuesta

50

Añadir este bit en el código (de preferencia al final de lo inserta que tiene):

var psconsole = $('#one'); 
    if(psconsole.length) 
     psconsole.scrollTop(psconsole[0].scrollHeight - psconsole.height()); 
+1

Gracias. Funcionó perfectamente –

9

Ver esta demostración en vivo: here

Para el cálculo de la parte inferior scrollTop, puede simplemente reste la height del scrollHeight:

var oneDiv = $("#one"); 
bottom = oneDiv.prop('scrollHeight') - oneDiv.height() 

Luego puede configurar scrollTop en bottom, o usar amazing jQuery's animate() para una animación genial.

demostración en vivo: here

4

me di cuenta de que mi problema era que tenía el código en el lugar incorrecto. -> Colocado bajo el elemento y resolvió el problema (error de novato ....) - Solo un recordatorio para todos.

Cuestiones relacionadas