Dar*_*olf 25 html css textarea
我正在开发一个项目,我可以在各种大小的div中使用数据.当用户点击其中一个div时,需要变成可编辑的textarea.宽度是常量,但我希望高度从原始div的高度开始,然后在添加滚动条之前增长到最大高度.那可能吗?
小智 60
您可以直接使用contenteditable并让用户输入div,这是一个演示:http://jsfiddle.net/gD5jy/
<div contenteditable>
type here...
</div>
Run Code Online (Sandbox Code Playgroud)
div[contenteditable]{
border: 1px solid black;
max-height: 200px;
overflow: auto;
}
Run Code Online (Sandbox Code Playgroud)
这是JavaScript函数
// TextArea is the Id from your textarea element
// MaxHeight is the maximum height value
function textarea_height(TextArea, MaxHeight) {
textarea = document.getElementById(TextArea);
textareaRows = textarea.value.split("\n");
if(textareaRows[0] != "undefined" && textareaRows.length < MaxHeight) counter = textareaRows.length;
else if(textareaRows.length >= MaxHeight) counter = MaxHeight;
else counter = 1;
textarea.rows = counter; }
Run Code Online (Sandbox Code Playgroud)
这是css风格
.textarea {
height: auto;
resize: none; }
Run Code Online (Sandbox Code Playgroud)
这是HTML代码
<textarea id="the_textarea" onchange="javascript:textarea_height(the_textarea, 15);" width="100%" height="auto" class="textarea"></textarea>
Run Code Online (Sandbox Code Playgroud)
这对我来说可以