如何在输入文本时自动增加文本区域的宽度?

发布于 2024-10-21 20:56:28 字数 118 浏览 3 评论 0原文

我正在尝试构建一个文本区域,其宽度在插入文本时会动态增加。

我发现许多脚本可以通过更改文本区域的高度来动态调整文本区域的大小,但没有任何脚本可以满足我的需求。

那么你知道有什么可以帮忙的吗?

I am trying to build a textarea whose width will dynamically increase while inserting text.

I have found many scripts that would dynamically resize a textarea by changing it's height but nothing that meets my needs.

So do you know anything that could help ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

空‖城人不在 2024-10-28 20:56:28

这可能会有所帮助..

<textarea id="tarea" onkeypress="change()" style="width:200;"> </textarea>


<script type="text/javascript"> 
function change() {
    var a = document.getElementById('tarea');
    var len = a.value.length;
    a.style.width = 200 + len;
    alert(a.style.width);
}
</script>

祝你有美好的一天..

this may help..

<textarea id="tarea" onkeypress="change()" style="width:200;"> </textarea>


<script type="text/javascript"> 
function change() {
    var a = document.getElementById('tarea');
    var len = a.value.length;
    a.style.width = 200 + len;
    alert(a.style.width);
}
</script>

have a good day..

浮萍、无处依 2024-10-28 20:56:28

为文本区域指定一个 ID。如果文本区域内的字体是等宽字体就很简单。如果不是有点复杂(创建一个字符宽度的分布函数,得到平均值,然后使用它)。

在 onkeyup 或 onkeypressed 事件上使用类似的东西

if (document.getElementById('yourid').value.lenght>defaultValue)
{
    defaultValue = defaultValue+charWidth;
    document.getElementById('yourid').width = (defaultValue+charWidth)+'px';       
}

Give the textarea an ID. If the font inside the textarea is monospace is simple. If not is a bit complicated (create a distribution function of the width of a character, get an average use it forward).

On a onkeyup or onkeypressed event use something like

if (document.getElementById('yourid').value.lenght>defaultValue)
{
    defaultValue = defaultValue+charWidth;
    document.getElementById('yourid').width = (defaultValue+charWidth)+'px';       
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文