1

我想制作一个随着用户到达底部而扩展的文本区域(向下扩展而不是向外扩展)

在 Facebook 上可以看到一个很好的例子,当用户键入时,文本框会相应地调整其大小。

我已经尝试在网上查找,但没有任何效果,所以如果这看起来微不足道,请原谅我。

<textarea name="messagea" id="styled"></textarea>
<script>
$(function() {
   $('styled').autogrow();
});
</script>
4

2 回答 2

2

使用原始 JavaScript,它将类似于以下内容。

var foo = document.getElementById('mytextarea');
foo.addEventListener('keypress', function(){
  if (this.clientHeight < this.scrollHeight) this.style.height = ''.concat(this.scrollHeight * 1.05, 'px');
});

这不能保证跨浏览器工作,因此您必须为此扩展它(对于 IE),但这应该为您提供处理按键事件和适当检查高度的基本概念。

于 2012-05-27T19:01:08.817 回答
2

你在使用 jQuery 吗?

如果是这样,这个问题已经在 StackOverflow 上得到解答:Auto expand a textarea using jQuerytextarea auto expand

于 2012-05-27T18:45:04.220 回答