Ответ 1
Попробуйте. http://www.jacklmoore.com/autosize Я здесь лучший. Это очень хороший.
Кажется, что есть тонна действительно плохих плагинов textoga для автозапуска для jQuery. Я хочу, чтобы мое текстовое поле автозагрузки было так же хорошо, как Facebook. Я хочу, чтобы он соответствовал только текущей строке и добавлял строку прямо перед тем, как это было необходимо.
Большинство плагинов, которые я просмотрел, пытаются угадать высоту строки из числа символов, что кажется слишком наивным. Я прочитал одно решение, которое создает скрытый div для вычисления высоты. Это похоже на правильный путь, но это решение не было в форме плагина.
Что там делает то, что я хочу и которое легко установить?
Попробуйте. http://www.jacklmoore.com/autosize Я здесь лучший. Это очень хороший.
У меня есть плагин, который вычисляет именно это: http://www.mostthingsweb.com/2012/01/textarea-line-count-version-1-3-released/. Он использует скрытый подход div и даже соответствует правильным атрибутам шрифта. Проверьте это:)
Вы можете вызывать плагин каждый раз, когда пользователь нажимает клавишу в текстовом поле, а затем соответствующим образом меняет размер текстового поля. Может быть, даже любой другой ключ, если вы хотите не обрабатывать мощность обработки.
Эй это чистый javascript
function sz(t) {
dv = document.createElement("div");
dv.style.visibility="hidden";
dv.style.position="absolute";
dv.style.width=t.offsetWidth;
dv.innerHTML = t.value.replace(/\n/g, "<br>");
document.body.appendChild(dv);
t.style.height=(dv.offsetHeight+22)+"px";
dv.parentNode.removeChild(dv);
}
то вы просто используете onkeyup = "sz (this)"