web-dev-qa-db-ja.com

デフォルトでtextareaスクロールバーを下に設定するにはどうすればよいですか?

ユーザー入力が送信されると動的にリロードされるテキストエリアがあります。数秒ごとに更新されます。このテキストエリア内のテキストの量がテキストエリアのサイズを超えると、スクロールバーが表示されます。ただし、スクロールバーを実際に使用することはできません。スクロールを開始すると、数秒後にtextareaが更新され、スクロールバーが最上部に戻るためです。デフォルトで一番下のテキストを表示するようにスクロールバーを設定します。誰もそれを行う方法のアイデアを持っていますか?

77
moesef

非常に簡単、バニラjavascriptで:

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

これはjQueryで使用できます

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