我有一个 jQuery 插件可以找到文本区域的插入符位置。我在 textarea 的 keyup 函数上实现它,像这样:
$("#editor").keyup(function () {
var textbox = $(this);
var end = textbox.getSelection().end;
});
我想在插入符号之前找到单词或单词的一部分。单词由任何类型的空格分隔。
我这样做的主要困难是处理换行符。给定插入符号的字符索引,如何找到紧接插入符号之前的单词或单词的一部分?
最佳答案
如果您使用 my jQuery textarea plug-in为此,无论浏览器如何处理换行符,选择字符的位置始终与文本区域的 value
属性相关。然后你可以得到最后一个词,如下所示:
请注意,您必须使用 textarea 的 value
属性,而不是 jQuery 的 val()
方法,后者规范化换行符。
$("#editor").keyup(function () {
var textbox = $(this);
var end = textbox.getSelection().end;
var result = /\S+$/.exec(this.value.slice(0, end));
var lastWord = result ? result[0] : null;
alert(lastWord);
});
关于javascript - 在文本区域中的插入符之前查找单词的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5590706/