如何突出显示文本,然后将其保存,以便下次进入同一页面时显示?

时间:2015-08-05 00:30:27

标签: javascript jquery css

我试图写一个网站,允许用户突出显示一些文字(将背景更改为黄色),然后应用程序将保存这个,以便下次他或她回到页面时,&# 39;已经变黄了(好像他们从未离开过)。

这是一个两个问题:

  1. 我可以使用window.getSelection().toString()获取文字,但我不知道如何将其作为选择器,因此我可以将选区的背景更改为黄色。

    < / LI>
  2. 我不知道如何获得&#34;地址&#34;的选择。我需要这个,以便我可以将它保存到数据库,并在下次用户加载页面时将其着色为黄色。

  3. 编辑目前正在研究:https://github.com/timdown/rangy

1 个答案:

答案 0 :(得分:2)

  1. 您希望将所选文本包装在<span>中,并使用设置所需背景颜色样式的类。 This question应该有所帮助。

  2. 这在某种程度上取决于您的后端架构。您可能希望存储element with the highlighted text,以及突出显示的起点和终点的索引。然后,当再次提供该页面时,请相应地重新应用<span>。如果您未在数据库中存储任何内容,则可以尝试将此数据存储在localStorage中,然后解析它并在页面加载时应用突出显示。

  3. 修改 我可能误会了。如果您正在谈论重置实际的突出显示(如重新选择文本),you can do that with JavaScript as well。您仍然需要一种方法来存储用户的选择数据,服务器端或localStorage。