gpt4 book ai didi

javascript - jQuery 获取光标所在的文本 block

转载 作者:行者123 更新时间:2023-11-27 23:36:03 25 4
gpt4 key购买 nike

我不确定这是否可能:

单击按钮即可获取光标当前所在的文本 block 。边界由空行确定。

例如。以下文本位于 HTML 代码的文本区域内

This is paragraph one

This is paragraph two and carriage return here
This is line 2 of paragraph two
Some text [cursor is here] some text
Rest of the text

This is the paragraph three

当单击按钮时,我想获取第二段的 4 行。

block 的边缘由开头和结尾处的空行结束。

第一段和最后一段只需一个空行。

光标打开意味着鼠标在文本区域字段中段落内的任意位置单击

我正在使用突出显示的文本和作品。对于平板电脑来说,如果在未突出显示时也能工作,那就很方便了。

最佳答案

您需要使用.selectionEnd来获取插入符位置(旧版IE可能不支持)...然后用它来查找插入符所在的段落。这里是a demo :

HTML

<textarea id="source">...</textarea>
<textarea id="result"></textarea>

脚本

$(function() {
var $source = $('#source'),
$result = $('#result');

function getParagraph() {
var indx,
strLength = 0,
val = $source.val().split(/\r\r|\r\n\r\n|\n\n/),
length = val.length,
cursor = $source[0].selectionEnd;
for (indx = 0; indx < length; indx++) {
// add two more to get past the carriage returns
strLength += val[indx].length + 2;
if (strLength > cursor) {
return val[indx];
}
}
}
$source.on('mouseup keyup', function() {
$result.val(getParagraph());
});

});

关于javascript - jQuery 获取光标所在的文本 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34126837/

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