web-dev-qa-db-fra.com

Comment définir la barre de défilement de textarea en bas par défaut?

J'ai une zone de texte qui est rechargée dynamiquement au fur et à mesure de la saisie de l'utilisateur. Elle se rafraîchit toutes les deux secondes. Lorsque la quantité de texte dans cette zone de texte dépasse la taille de la zone de texte, une barre de défilement apparaît. Cependant, la barre de défilement n'est pas vraiment utilisable, car si vous commencez à faire défiler l'écran vers le bas, quelques secondes plus tard, la zone de texte est rafraîchie et ramène la barre de défilement vers le haut. Je veux définir la barre de défilement pour afficher par défaut le texte le plus bas. Quelqu'un a une idée de comment faire?

77
moesef

assez simple, en vanille javascript:

var textarea = document.getElementById('textarea_id');
textarea.scrollTop = textarea.scrollHeight;
161
Will P.

Vous pouvez l'utiliser avec jQuery

$(document).ready(function(){
    var $textarea = $('#textarea_id');
    $textarea.scrollTop($textarea[0].scrollHeight);
});
50
Mahfud Harun