javascript - JS对选中文本的复杂操作

标签 javascript jquery text syntax-highlighting highlight

JavaScript 的伟大思想,请帮忙。 我需要处理所选文本的复杂操作。

我有一些带有很多 html 标签的文本,我需要一个返回以下结果的函数:

用户选择具有该类的特定标记中的文本,例如 <div class="text"> ,

并且该功能在以下情况下被激活:

$('.text').mouseup(function (e){...});
  • 返回所选内容的开头
  • 返回结尾
  • 选择标识特定标签及其类别

此外:

  • 要赋予 html 标签的字符数,
  • 但你可以排除 一些标签示例,

好的,一些代码,我有:

$(function () {
    $('.text').mouseup(function (e){
        $(this).highlight(getSelectionText());
   })
})

this demo

Here we highlight the desired part of the text, but did not return the correct position

In addition, the text is released coincidentally characters, and I need it for the position

最佳答案

您可能想尝试一下:

$(function () {
    $('#detailBoxParagraph').mouseup(function (e){
        var selectedText = getSelectionText();
        $(this).removeHighlight();
        $(this).highlight(selectedText);

        var txt = $(this).text();
        var pos = [];
        var i = txt.indexOf(selectedText);
        if(i > -1) {
            pos.push({"start": i+1, "end": i + selectedText.length});
        }
        while (i != -1) {
            i = txt.indexOf(selectedText, i + 1);
            if(i > -1) {
               pos.push({"start": i+1, "end": i + selectedText.length});
            }
        }
        console.log(pos);
   })
   //alertSelection();
})

关于javascript - JS对选中文本的复杂操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31870984/

相关文章:

javascript - 使用 jquery 计算表格单元格中的值总计

javascript - 在您键入文本时扩展的 CSS 文本区域

javascript - 从 HTML 中提取 JavaScript 代码中的变量值

Javascript 对象 Jquery 回调

ios - 如何在IOS SDK中用文字获得老虎机效果?

java - 有人能给我一个改变文本颜色的非常简单的例子吗?

javascript - 阅读和书写姓名时出现问题

javascript - jQuery 插件 - 返回的回调太多

javascript - 如何将变量从一个javascript文件传递到不同页面的其他javascript文件

java - 解析java中具有相同开头但不同结尾的字符串