我很好奇听到其他人就我一直在考虑的问题提出的意见。
基本上我想向用户提供一个文本文档,并允许他/她选择文本并对其进行注释。具体到注释我的目标是实现以下目标:
您如何从技术角度解决这个问题?
我的一些想法是:
您有什么想法或改进方面? heck 如何支持文档的文本更新而不会破坏所有注释?
答案 0 :(得分:5)
我正在研究同样的问题,我个人赞成不要自己动手,而是支持像Annotator这样的现有开源库。
答案 1 :(得分:3)
http://mark.koli.ch/2009/09/use-javascript-and-jquery-to-get-user-selected-text.html
http://mark.koli.ch/2009/09/05/get-selected-text-javascript.html
获取所选文本非常简单。存储它(或其起点/终点)也是一个笑话。但是你的第3点呢?如果文字改变怎么办?
如果文本更改,则原始文本和您存储的原始选择坐标将不等于当前修改的文本。您应该知道文本文档中存在的注释,以便每次更改时,应更新或删除引用该特定更改文本的注释(可能在文本之前和之后的快速比较之后:单词缺失?或者只是某些单词已得到纠正?),但这似乎真的是一项艰难的任务。
我认为将整个文本注释存储在数据库中是必不可少的,以避免它被更改并且注释丢失。这样您仍然可以获得注释的完整文本。然后你还应该使用一种标志来指示注释的开始字符,如果文本发生了变化,你可以计算出更改前文档文本中的字符差异,以及后面的文本文本中的字符差异,并找到这种方式原始注释的新起点(假设文档文本的注释部分未更改)。
将文本文档分成尽可能多的段落也应该有所帮助,这样您就可以将文档的不同部分分开并逐个处理。
现在我真的很想看到它完成! :)