如何限制我的textarea超出某些行?

时间:2012-02-08 08:57:41

标签: html textarea

我正在使用textarea,因为我不想在增加行数的同时使用滚动条。它应该可以调整大小。有没有办法做到这一点。

1 个答案:

答案 0 :(得分:1)

当用户输入更多文字时,您可以使用JavaScript来增加textarea的高度。

var textarea = document.getElementsByTagName('textarea')[0],
    originalHeight = textarea.clientHeight;

textarea.addEventListener('keyup', function() {
    textarea.style.height = Math.max(textarea.scrollHeight, originalHeight) + 'px';
});

jsFiddle

似乎不希望缩小该示例代码。我认为大多数编写这些控件的人会生成一个隐藏的div height: auto,并且所有字体样式都会被复制(font-sizefont-familyline-height,{{ 1}}等,然后使用letter-spacing的内容更新div的内部文本。然后根据此隐藏元素的高度设置textarea的高度。