jQuery获取光标所在的文本块
jQuery to get block of text where cursor is on
我不确定这是否可能:
单击按钮可获取光标当前所在的文本块。边界由空行确定。
例如。以下文本位于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行。
块的边缘在开始处和结束处由一条空行完成。
对于第一段和最后一段,只需要一行空白。
光标打开意味着鼠标点击文本区域字段中段落内的任何位置
我使用了突出显示的文本和作品。对于平板电脑来说,如果在不高亮显示的情况下也能工作,那就很方便了。
您需要使用.selectionEnd
来获取插入符号位置(在旧IE中可能不支持)。。。然后用它来查找插入符号在哪个段落中。下面是一个演示:
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());
});
});
相关文章:
- 使用谷歌应用程序脚本从工作表中获取值并将其显示在文本框中
- 如何获取经过编辑的文本
- 使用 jQuery 从下拉列表中获取所选文本
- 如何获取文本框组的值,并使用jquery将它们放入(key:Value)数组中
- 使用格式化文本获取 DIV 或跨度的动态宽度高度
- 通过搜索 td 文本获取嵌套表 ID
- 将 HTML 元素的文本获取到数组中
- 如何从响应文本获取 JSON 字符串到 JavaScript 中
- 如何根据选项文本获取选项索引
- 通过其文本获取dom节点
- 如何通过锚文本获取对象
- 在Javascript/JQuery中从超链接文本获取Href
- 如何将函数中的文本获取到此通知警报中
- 根据指定的文本获取标记
- 通过匹配文本获取json数据到数组中
- 如何通过id和输出文本获取选项元素
- 通过相邻的TH内部文本获取TD中的文本
- 如何将任何指定网页中的文本获取到变量中
- 通过内部文本获取所有元素
- 从给定的HTML文本获取JQuery