Javascript 在输入字符时扩展输入类型文本的更优雅的方式

Javascript 在输入字符时扩展输入类型文本的更优雅的方式,javascript,jquery,html,css,Javascript,Jquery,Html,Css,所以我遵循了这个例子,它可以正常工作,但是它有一些问题 如果您使用大写字母书写,那么输入没有分配足够的空间,它最终会再次隐藏在输入中 在文本输入扩展的早期阶段,文本有点小故障(在显示回同一位置之前,会立即向左收缩)。是否可以删除此项 如果你写的都是小号大写字母,那么结尾就有太多的剩余空间 例如: 两个示例的“字母”数相同 在第一个输入示例中,它不适合大小 在第二个input示例中,有一点剩余空间 最后,实际测量的尺寸是多少?px,em?听起来你的大多数问题都是因为字体。使用单空格字体进行输入。听

所以我遵循了这个例子,它可以正常工作,但是它有一些问题

  • 如果您使用大写字母书写,那么输入没有分配足够的空间,它最终会再次隐藏在输入中
  • 在文本输入扩展的早期阶段,文本有点小故障(在显示回同一位置之前,会立即向左收缩)。是否可以删除此项
  • 如果你写的都是小号大写字母,那么结尾就有太多的剩余空间
  • 例如:

    两个示例的“字母”数相同

    在第一个
    输入
    示例中,它不适合大小

    在第二个
    input
    示例中,有一点剩余空间


    最后,实际测量的尺寸是多少?px,em?

    听起来你的大多数问题都是因为字体。使用单空格字体进行输入。

    听起来您的大多数问题都是由于字体造成的。输入时使用单空格字体。

    使用span和
    contenteditable=“true”
    来假装它怎么样?看看关于这个问题的公认答案:@KodosJohnson我不喜欢,因为我有一个函数,可以获取所有输入,然后使用它将ajax数据发送到服务器。我也在使用span来显示信息。用span和
    contenteditable=“true”
    来假装它怎么样?看看关于这个问题的公认答案:@KodosJohnson我不喜欢,因为我有一个函数,可以获取所有输入,然后使用它将ajax数据发送到服务器。我还使用跨距来显示信息。使用css将字体族更改为Console或其他单间距字体。这有点帮助,但如果文本比我的示例长(在所有大写字母中),它仍然会溢出。您知道关于这种glitchy效果的任何信息吗?是的,这是因为您只在keyup中应用了新的大小。改为使用键控键。并在尺寸上再加一个1。更新你的小提琴。使用css将字体系列更改为Console或其他单间距字体。这会有所帮助,但如果文本长度超过我的示例(在所有大写字母中),它仍然会溢出。您知道关于这种glitchy效果的任何信息吗?是的,这是因为您仅在keyup中应用了新的大小。改为使用键控键。并在尺寸上再加一个1。更新你的小提琴。