【问题标题】:How does weava highlighter extension works under the hood?weava荧光笔扩展如何在引擎盖下工作?
【发布时间】:2021-01-11 01:58:16
【问题描述】:
weava highlighter extension 可以突出显示文章/pdf 并将突出显示存储在服务器上。
我不明白它是如何在页面重新加载后保持高亮显示的。重新加载页面后需要存储什么才能找到突出显示的部分?我不能存储文本,因为文本可以被复制。 CSS 选择器也不够用,它是如何工作的?
尝试调试扩展,但代码非常丑陋,很难理解发生了什么。
【问题讨论】:
标签:
html
dom
google-chrome-extension
css-selectors
【解决方案1】:
实际上,它存储了足够的文本来描述该部分的开头和结尾以确保唯一性,在控制台中找到以下痕迹:
"-MI0L15LAX*************": {
"accessRight": {
"HZTU1cv32******************": "owner"
},
"createDate": 1600971612666,
"creator": "HZTU1cv32******************",
"favIconUrl": "https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196",
"highlights": {
"d1311a13-d334-467c-8915-5faf412a689f": {
"colorNum": 3,
"creator": "HZTU1cv32p******************",
"date": 1600972075045,
"endStr": "afterthepagereloaded?ican'tsto",
"startStr": "tobestoredtofindthehighlighted",
"text": "section"
}
},
"title": "html - How does weava highlighter extension works under the hood? - Stack Overflow",
"url": "https://stackoverflow.com/questions/64052135/how-does-weava-highlighter-extension-works-under-the-hood",
"version": "0.0.3"
}
它并不完美,而且容易出错(我能够欺骗它以突出显示错误的部分),但看起来对于大多数人来说已经足够了。
这种方法的另一个缺点是,如果文章稍有改变(错字等),亮点可能会丢失。