我有一个jQuery插件,可以找到textarea的插入位置。我在textarea的keyup函数上实现它,如下所示:
$("#editor").keyup(function () {
var textbox = $(this);
var end = textbox.getSelection().end;
});
我想在插入符号之前找到单词或单词的一部分。单词由任何类型的空格分隔。
我这样做的主要困难是处理换行符。如何在插入符号的插入符号之前找到插入符号的字符或部分?
答案 0 :(得分:8)
如果您使用my jQuery textarea plug-in,则无论浏览器如何处理换行符,选择字符位置始终相对于textarea的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);
});