我正在尝试在类似Microsoft Office Outlook的程序中复制“自动更正”功能。
首先,每次用户在行首键入“a”(字母a和一个空格),我想将该文本更改为“*代理人[”
我已经编写了以下代码,如果您在文本区域中从上到下输入,则可以正常工作。但是,如果您在文本区域中的任何其他位置键入,则文本会更改,然后光标移动到文本区域的末尾。
我希望光标始终放置在更改后的文本末尾。
我有变量currentLineNumber
中更改的行号,我知道光标需要位于该行的第8个字符之后,但我不知道如何告诉它去那里。
理想情况下,我希望像这样做:
function setCursor(row, position) {
//.... code to set cursor
}
我应该怎么做才能完成这个任务呢?我可以接受使用JavaScript或jQuery的解决方案(尽管我觉得jQuery有点难以阅读和理解)。
如果有更好的方法来实现我的需求,我也愿意尝试。
如果你不理解问题,这里有一个jsFiddle链接。