jquery – 在Firefox中,如何强制光标粘贴到最后输入的字符?

我有一个输入字段,其中将输入序列号.设置允许的字符数.

问题是因为字母间距,在firefox中键入一个字符时,光标会跳到你输入下一个字符的位置(即使设置了maxlength),这会使字符符号突破它们的小方块应该坐下来,像这样:firefox cursor jump
firefox cursor jump http://www.bryonykernick.com/dropboxofdeath/ff-form-cursor.png

IE正确显示它:ie no cursor jumpie no cursor jump http://www.bryonykernick.com/dropboxofdeath/ie-form-cursor.png

如何强制firefox不要将光标放在字母间距之后? (如果可能/需要JS,jQuery会很好)

这是我的代码:

    #serial {
    background:transparent url(../images/bg_serial.gif) no-repeat scroll 0 50%;
    border:0 none;
    color:#FFFFFF;
    font:bold 16px Courier New;
    height:22px;
    letter-spacing:14px;
    line-height:normal;
    padding:4px 0 0 6px;
    text-transform:uppercase;
    width:208px;
    }
<form id="serialForm">
<label for="serial">Serial:</label>
<input id="serial" type="text" name="serial" maxlength="9" />
</form>

最佳答案 看起来,FireFox处理字母间距的方式与Internet Explorer和其他浏览器不同.

如果将input元素的宽度更改为220像素,则不会导致任何文本溢出.由于您实际上隐藏了输入,因此额外宽度无关紧要.

我在Chrome build 1.0.154.53,FireFox 3.0.7和Internext Explorer 8.0.6001中测试了这个解决方案. 18372.

点赞