Chrome 插件需求调查

2023-03-12 16:29:03 +08:00
 zou8944

想写个 Chrome 插件,满足一下自己日常的需求,但是感觉比较简单没意思。

大家在使用 Chrome 时,有没有什么痛点,交流一下?

3820 次点击
所在节点    程序员
47 条回复
zou8944
2023-05-05 14:42:19 +08:00
wudicgi
2023-05-05 16:37:32 +08:00
@zou8944 已安装,不过不知道为什么按 Ctrl + Shift + F 没看到有什么反应
重新运行 Chrome 也试过了
zou8944
2023-05-06 09:59:31 +08:00
@wudicgi 由于 Chrome 插件的机制,开发者可以选择通过顶部插件栏弹出搜索框,也可以将搜索框嵌入在用户页面。目前市场上排名前几的搜索项目基本都采用前者。但前者无法常驻前台,因此我选择了后者。

而后者有一个缺点:安装插件后,只有新打开的页面才会被注入搜索框代码,所以安装后需要刷新页面。

另外需要注意的是,Chrome 插件相关页面无法注入搜索框代码,因此插件页面和插件市场无法使用。

如还无法使用,请告知操作系统和浏览器版本,可能是 bug 。我自己的 mac os ,但是没有在 windows 上测试。
wudicgi
2023-05-06 10:47:17 +08:00
@zou8944 Chrome 版本是 Version 113.0.5672.63 (Official Build) (64-bit)
系统是 Windows 10

测试的页面就是 V2EX 这个帖子,还有其他一些页面
不只是刷新页面,新建页面和重启 Chrome 都试过了

我在 Console 中能看到 Hello from Find Lite! 日志的输出,但因为没有 Chrome 插件开发的经验,不知道还有什么其他办法能定位下问题
Console 里直接执行 FindLite 会报 VM102:1 Uncaught ReferenceError: FindLite is not defined
估计是这个对象我在 Console 里不能直接用
wudicgi
2023-05-06 11:09:57 +08:00
@zou8944 我加断点和调试代码试了下

self.keydownListener = async function (event) {
console.log(event); // 我添加的调试代码
// Ctrl+Shift+F 或 Command+Shift+F 呼出搜索框
if (event.ctrlKey || event.metaKey) {
if (event.shiftKey && event.key === 'f') {

按 Ctrl + Shift + F 会出来 3 条 log:

KeyboardEvent {isTrusted: true, key: 'Control', code: 'ControlLeft', location: 1, ctrlKey: true, …}
KeyboardEvent {isTrusted: true, key: 'Shift', code: 'ShiftLeft', location: 1, ctrlKey: true, …}
KeyboardEvent {isTrusted: true, key: 'F', code: 'KeyF', location: 0, ctrlKey: true, …}

这么看应该是 'f' 大小写的问题, event.key === 'f' 换成 event.keyCode = 70 就好了

另外,单独按 F 键时, event.key 是 'f', 变成大写应该和按了 Shift 有关系
wudicgi
2023-05-06 11:26:28 +08:00
@zou8944 我现在可以先打开 Caps Lock 再按组合键就能呼出,先试用了一下,有几点小问题觉得就没必要去 github 发 issue 了:

1. 建议“区分大小写”和“全字匹配”的图标换成常用一些的符号,现在最新版本 VS Code 里的图标样式就不错
https://github.com/microsoft/vscode/issues/54275
https://www.iconfont.cn/search/index?searchType=icon&q=%E5%8C%BA%E5%88%86%E5%A4%A7%E5%B0%8F%E5%86%99
https://www.iconfont.cn/search/index?searchType=icon&q=%E5%85%A8%E5%AD%97%E5%8C%B9%E9%85%8D&page=1&fromCollection=-1&fills=&tag=

2. 扩展的名称可以改得霸气一点,现在带个 Lite 看标题还以为是个功能简单的
我自己感觉可以改成 Ultra Find, Text Find Pro, Regex Find 之类的,问了 ChatGPT 也给出了一些建议:
FindMaster Pro
RegExpert
SmartSearchX
PrecisionFinder
EliteTextSeeker
SuperTextSearch
MatchMaven
HyperFind
UltraSearchPro
MightyTextFinder

3. 不知道不注入代码到页面的话,无法常驻前台有什么主要影响,感觉温和一点
zou8944
2023-05-08 22:40:18 +08:00
@wudicgi event.keyCode 弃用了,我换成了 event.key.toLowerCase() === 'f'。提审了,可能需要等两天才能过审。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/923388

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX