如何在整个文档中查明单词或选择?

vma*_*man 9 html javascript

我想在我的网站上突出显示部分文字.将为数据库中的特定用户保存此突出显示的文本,并且当再次打开文档时,它将显示先前突出显示的文本.我假设我将使用javascript来突出显示文本,但我似乎无法找到一种方法来确定我突出显示的单词.

function getSelText()
{
    var txt = '';
     if (window.getSelection)
    {
        txt = window.getSelection();
             }
    else if (document.getSelection)
    {
        txt = document.getSelection();
            }
    else if (document.selection)
    {
        txt = document.selection.createRange().text;
            }
    else return "";
    return txt;
}
Run Code Online (Sandbox Code Playgroud)

我正在使用它来获取选择,但我无法弄清楚文本中的选择位置.最大的烦恼是当我在行或文本中有重复时,所以如果我使用搜索,那么我会找到第一个实例,而不是我想要的那个.

所以问题是:如何在整个文档中查明单词或选择?

Tim*_*own 4

您可以使用我的Rangy库及其选择序列化模块来实现此目的。Rangy 的核心为所有浏览器提供了一致的选择和范围 API,序列化器模块在此基础上通过将每个选择边界转换为穿过文档的路径来构建。有关更多详细信息,请参阅链接的文档。