Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature] 简历部分内容标注/高亮 #75

Open
GrinZero opened this issue Jul 19, 2022 · 11 comments
Open

[feature] 简历部分内容标注/高亮 #75

GrinZero opened this issue Jul 19, 2022 · 11 comments

Comments

@GrinZero
Copy link

问题背景

我希望面试官在看到我的简历时立刻能看到我最想表达的亮点,在这种情况下希望简历可以进行内容标注功能

预期效果

可以对选中的内容进行高亮/标注
image

预期实现

通过右键弹出菜单的方式实现
image

具体技术方案

方案一

方案一的简述是通过windpw.getSelection()这个API进行浏览器文本选择及替换。
我的具体实现方式我提了一个PR,在其中讲了

方案二

由于Selection会涉及多个节点,在选择多节点时表现出强烈的不稳定性,经过整理或许还可以通过如下方案实现。

  1. 利用浏览器本身的Selection特性,不做节点替换,只做样式调整。举个例子,对于选中的范围,对其上层节点添加class=sign以期望实现.sign:: selection{}
  2. 通过SelectionAPI持续修改selection的范围而不是替换节点

这个方案目前没有正式实验,预估存在问题

  • Selection的特性是点击页面其他位置取消选中,怎么取消这个规则的同时不影响其他选中行为
  • ::selection只支持color、background、cursor 以及 outline,可胜任的场景是否足够
@GrinZero
Copy link
Author

@visiky 没有人讨论一下嘛
image

@GrinZero
Copy link
Author

GrinZero commented Aug 8, 2022

点亮一下issue @visiky

@visiky
Copy link
Owner

visiky commented Aug 8, 2022

@visiky 没有人讨论一下嘛

image

忙碌中 没注意到

@GrinZero
Copy link
Author

GrinZero commented Aug 8, 2022

忙碌中 没注意到

等大佬有空

@GrinZero
Copy link
Author

点亮一下issue @visiky

@visiky
Copy link
Owner

visiky commented Aug 21, 2022

标注后的内容存储在哪?

@GrinZero
Copy link
Author

GrinZero commented Aug 21, 2022

标注后的内容存储在哪?

每次标注都会产生一个effect,每一个effect都是可序列化的
image
我期望中是JSON.stringfy后存储在config.json中的(新增)字段effectList或者mountEffectList
image

@GrinZero
Copy link
Author

可以持久化,因为这里保存的都是string,设计的时候已经考虑了持久化

@GrinZero
Copy link
Author

踢一脚...

@zydemail
Copy link

加一个富文本编辑器在线编辑简历,提供预览功能和高亮的样式,就可以高亮,实现成本比你这个简单

@jinyu-code
Copy link

有更新吗

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants