gpt4 book ai didi

javascript - 如何选择光标前的整个单词?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:48:32 24 4
gpt4 key购买 nike

我想使用 JS 或 jQuery 抓取光标前的整个单词。这意味着如果光标在某个单词之间,它会捕获它前面的整个单词。例如在字符串中:

这是一个蹩脚的句子。

如果我的光标在 sentence 中的 nt 之间,它将选择 lame。如果我的光标在 is 之间或之前,它会抓取 This

这是我尝试过的:

function getCaret(el) {
return el.selectionStart;
}

window.onload = function () {
var textarea = document.getElementById('content'),
status = document.getElementById('status');

textarea.onmouseup = textarea.onkeyup = function () {
status.innerHTML = getCaret(textarea);

var char = $('#content').val().split('');
var before = char.slice(0, getCaret(textarea));
words = before.join('').split(' ');
var word = words.pop()
wordBeforeCursor.innerHTML = word;

};
};
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<div id="status">Move the caret on the text:</div>
<textarea id = 'content'>
Here's a bunch of words
</textarea>
<div id="wordBeforeCursor"></div>

FIDDLE

最佳答案

在您的代码中添加这些行,

last=words.length-1;
wordBeforeCursor.innerHTML = words[last] ? words[last] :'';

var word = words.pop(); 之后

Demo

关于javascript - 如何选择光标前的整个单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20898444/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com