dポイントプレゼントキャンペーン実施中!

Javascriptのtextareaで、常に最終行を表示した状態 (追加した文字列の最新の状態)にするには、どう記述すれば、良いのでしょうか?

<textarea id="ta"></textarea>

A 回答 (1件)

textareaのsscrollを制御するにはscroolTop属性を設定すればよいみたい。


(全体の高さ-表示高さ)をTopの値に設定すればよいけれど、擬似的に全体の高さを入れても、(その大きさは存在しないので)ブラウザ側で訂正してくれるみたい。
なので、
 element.scrollTop = element.scrollHeight
とか。

>常に最終行を表示した状態
「常に」を本当にやるなら、(onscrollが設定されているブラウザとそうでないものがあるみたいなので)、setIntervalで定期的に設定するとかすればよいのでは?
でも、ユーザが入力中に働くと、大変使いにくいのでfocusがあったらセットしないとかしておかないとならなくなってしまうのでは?
…とするなら、最初にセットしておけば、後はonblurで充分いけるかと。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!