以下は、jQuery で記述された単純な textarea スクリプトで、ユーザーが入力するコンテンツに合わせて各テキストエリアを拡張します。
$(document).ready(function() {
$('textarea').keyup(function() {
var addin = 0;
var txtheight = $(this).scrollTop();
if(txtheight > 0){ addin = 4; }
$(this).height(($(this).height() + txtheight + addin));
});
$('textarea').keyup();
});
問題は、テキストエリアの初期コンテンツが 1 行を超える場合、スクロール位置を計算できないため、ロード時にテキストエリアがコンテンツに合わせて拡張されないことです。
これを回避する方法についてのアイデア。