input有maxlength属性,可以控制输入的最大长度。而textarea没有。这个时候,只能通过手动的形式来限制textarea的输入长度。既然手动形式,那么我们就从用户的操作出发,也就是用户的键盘输入操作。可有时候,用户不一定通过键盘输入,有时候是通过复制粘贴来实现。那么侦听什么事件比较好呢。

请看这篇文章:http://blog.csdn.net/sunlylorn/article/details/6123355

为了照顾兼容性。ios下app走的都不是ie这条路。可以不必要加那些if。为了其它端。比如网页端等,还是加上了。在这里用onpropertychange,onchange就可以了。

<textarea id="signature" cols="3" rows="10" onPropertyChange="autoGrow(this , 72);" 
oninput
="autoGrow(this , 72);" style="width:100%; height: 80px;
font-size: 16px; color: #333333; padding: 6px; padding-bottom: 28px;"
>
</
textarea>

再说下自适应高度。为了不出现下拉条,让textarea自适应高度。我们可以对比textarea的scrollHeight 和clientHeight值,然后动态修改实现。到了这里。我们可以共用上边的函数。那么综合在一起的函数如下。
https://developer.mozilla.org/en/docs/Web/API/HTMLTextAreaElement#Examples