javascript - 输入文本时调整输入文本字段的大小

标签 javascript html css

是否可以在输入文本时调整文本输入框的大小?我在网上搜索过,但没有找到任何内容。

最佳答案

我刚刚为你做了一个,在这里试试:http://jsfiddle.net/FNMSP/2/

function autoResize(e){
    var ele=e.target;                          //get the text field
    var t=ele.scrollTop;                       //use scroll top to determine if
    ele.scrollTop=0                              //space is enough
    if(t>0){                                       //If it needs more space....
        ele.style.height=(ele.offsetHeight+t+t)+"px";  //Then add space for it!
    }          
}

您可以对文本区域执行此操作,

<textarea onkeydown="autoResize(event)">Auto Resize!</textarea>

或者使用下面将函数附加到每个 <textarea> :

var ele=document.getElementsByTagName("textarea");
for(i=0;i<ele;i++){
    ele[i].addEventListener("keydown",autoResize,false)
}

请随意使用它。

关于javascript - 输入文本时调整输入文本字段的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6784078/

相关文章:

CSS 渐变会阻止您添加 :hover effect

javascript - 如何调整空格键和输入仅适用于第三个按钮而不适用于任何其他按钮?

javascript - 如何从 Angular 5 中的自定义属性获取值?

javascript - 滚动时的 jQuery 导航栏过渡。如何调整特定的过渡点

javascript - 如何使 HTML 页面中的文本可点击以重定向到外部页面

javascript - 根据页面协议(protocol)加载css

html - css 伪类选择器为什么不能在 :focus div 上工作

javascript - jQuery 只应用于一个元素

java - 需要一个基于 Java 的 HTML 美化器来清理 Velocity 生成的 HTML

html - 列中的 Bootstrap 中断