0

我正在尝试在键入时调整 textarea 的大小,以使用内部文本的高度来调整 textarea 的高度。我使用以下 javascript 代码执行此操作:

function textAreaAdjust(o) 
{
  o.style.height = "1px";
  o.style.height = (o.clientHeight)+"px";  
}

并在我的 textarea 上尝试了 onkeydown 事件:

<form:form modelAttribute="article" action="articleeditsubmit">
    <input type="submit" value="Editer" />
    <form:input path="title" /> ¨<br/>
    <form:textarea path="content"  onkeydown = "textAreaAdjust(content)"  style="width:100%;overflow:hidden"  />
    <form:hidden path="id" /><br/>                  
</form:form>

此代码在 Chrome 浏览器上运行良好,但在 Firefox 上,当输入超过屏幕高度的长文本时,浏览器的滚动条出现并强制焦点到页面顶部,然后快速返回到页面末尾。这对用户来说是一个非常糟糕的闪烁效果,我正在寻找修复它。

4

1 回答 1

0

为什么要先将高度设置为 1px?Firefox 似乎会跳到屏幕顶部,因为文本框的高度会缩小,然后在您设置正确的高度时会跳回。

于 2012-08-21T08:07:25.657 回答