【发布时间】:2011-01-16 08:23:40
【问题描述】:
大家好, 我遇到了一个恼人的错误,在我的情况下,它对用户并不友好。
用户可以使用向上和向下箭头键设置输入字段的值。 焦点始终设置在输入字段上,因此用户可以在使用箭头键选择值后进行输入。
我希望光标位置始终保留在输入值的最后一个字符处,以便用户可以在通过箭头键选择值后立即键入。如果您按向下箭头键,那效果很好,因为在这种情况下,光标会自动跳到输入框的末尾。
如果您按向上键,情况正好相反——光标跳到开头。 我可以用我在 stackoverflow 上找到的“setCursorPosition”脚本来解决这个问题。
但是,尽管它正在工作,但用户无法真正“感受和看到”它。如果我按向上箭头键,光标仍显示在输入值的开头。一旦我开始输入,光标就会跳到最后,它工作正常。
在这里查看:http://jsfiddle.net/3UHVY/1/
所以我想知道您是否有解决方案,以便当我点击向上或向下箭头键时光标可能始终保留在输入框的末尾,并且它对用户也是可见的和逻辑的。现在用户可能认为他必须抓住鼠标并直接跳回输入框才能将光标设置到末尾。
【问题讨论】:
-
您正在重写默认文本框行为以增强用户体验?我怀疑这是否有意义,因为用户期望不同的行为。
-
这也让我很恼火,因为当我点击向下按钮时,Opera 会自动给我一个不相关内容的下拉列表...
-
@j3frea 你也许可以用 autocomplete="off" 来阻止这种行为
-
自动完成对我来说是一个有用的功能。所以你需要为输入框关闭它,而不是我。我和卡斯帕在这里。
标签: javascript jquery cursor position