在输入文本时调整输入文本字段的大小 [英] Resize input text field as text is entered

查看:159
本文介绍了在输入文本时调整输入文本字段的大小的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以在输入文字时调整文本输入框的大小?

Is it possible to resize a text input box as text is typed? I've searched the web and haven't found anything.

推荐答案

我刚刚为您准备了一个,请尝试: a href =http://jsfiddle.net/FNMSP/2/> http://jsfiddle.net/FNMSP/2/

I just made one for you, try it here: 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.overflowY="hidden";           ***Don't use this line***/
        ele.style.height=(ele.offsetHeight+t+t)+"px";  //Then add space for it!
    }          
}



您可以对textarea执行此操作,

You can do this to the textarea,

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

或使用下面的方法将函数附加到每个< textarea& code>:

Or use below to attach the function to every <textarea>:

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

随意使用。

这篇关于在输入文本时调整输入文本字段的大小的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆