0
A
回答
1
尝试这样的:
<script>
function adjustWidth(obj) {
obj.style.width = (obj.value.length) * 7.3 + "px";
}
</script>
<input type="text" onkeypress="adjustWidth(this)">
然而,这取决于文字大小,字体等
0
你的意思是这样
<input style="width:100px" onkeyup="var len = this.value.length;
if (len>10) {
this.style.width=(parseInt(this.style.width)+10)+'px';
}" />
0
宽度不能作为准确随着字符的宽度彼此不同。
但尽管如此,你可以做这样的事情
$("input:text").keyup(function() {
$(this).css('width', $(this).val().length*10);
});
Demo 正如你可以看到我假设每个字符字段大小必须增加10px的。这很难分配适合所有角色的正确配给。
0
其实,你可以精确地做到这一点。您可以通过在屏幕外打开绝对位置的div,并使用与您的文本框相同的字体并在文本框中填充文本框中的文本来完成此操作。然后,将该div的宽度(将符合文本)并将文本框设置为该宽度。
请注意,div需要离屏(左:-9999px),而不是隐藏(display:none),否则它将不起作用,因为浏览器需要渲染文本以计算宽度。另外,将div的文本设置为文本内容以及尾部空格将有助于确保文本框总是比所需的字符大一个字符,从而解决了显示的键和正在更新的宽度之间的任何延迟。
休息过后,我会发布一个修改后的James Padolsey的JQuery Autoresize脚本文件,它可以与textareas一起使用,首先将宽度调整为某个最大大小,然后将文本的高度调整为文本换行。这不完全是你想要的,但它可能会有所帮助。
相关问题
- 1. 如何在输入文本时自动增加textarea的宽度?
- 2. 如何根据宽度更改文本字段的占位符?
- 3. 文本和文本字段的宽度
- 4. Robot Framework - Selenium2Library - 根据之前的文本输入文本字段
- 5. 如何根据里面的文字增加div宽度?
- 6. 如何增加输入字段的宽度?
- 7. 增加文本框内的宽度Icon.ToolbarAndroid
- 8. 如何根据文本内容增加文本框的大小
- 9. 输入文本字段和按钮的宽度变化动态
- 10. 如何根据长度分段文本?
- 11. 固定高度的文本输入字段,顶部的文本
- 12. 如何根据文本框的值添加多个输入字段?
- 13. 如何根据标题标签文本更改增加/减少UIButton宽度?
- 14. 文本输入的控制宽度
- 15. 文本字段中的静态宽度
- 16. 如何将宽度设置为自举类型下的输入文本字段
- 17. 根据可用的宽度和字体计算文本高度?
- 18. 根据用户输入的数字重新排列文本输入字段
- 19. 长文本输入文本字段在IE7中增加表格单元格
- 20. 增加文本输入内的值 - javascript
- 21. 如何创建文本输入字段
- 22. 增加文本字段的大小
- 23. 如何根据输入的文本添加规则到JtextPane
- 24. 如何根据UIScreen宽度自动缩小文本中的文本
- 25. 如何根据文本/字符串的长度调整文本框的高度
- 26. 访问文本输入字段数据
- 27. 如何根据Android中的屏幕宽度调整文本
- 28. rails/css:可变宽度文本输入
- 29. iOS:正确设置或增加文本字段宽度的方法
- 30. 根据浏览器改变输入字段的宽度?
这是http://stackoverflow.com/questions/1288297/jquery-auto-size-text-input-not-textarea的重复 – sandeep 2012-03-12 13:37:47