0

テキストエリアの高さを内部のテキストの高さに合わせて調整するために入力するときに、テキストエリアのサイズを変更しようとしています。私は次のJavaScriptコードでこれを行います:

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

私のテキストエリアで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 に答える