【发布时间】:2015-06-26 16:42:01
【问题描述】:
我不知道这是否是做我想做的最有效的方法,如果不是一定要告诉我。
我正在构建一个 chrome 扩展,它应该遍历页面上的每个单词,然后将其与数组中 12,000 个元素的列表进行比较。我设法让它在内容脚本页面上运行,但令我沮丧的是,由于正在发生所有循环,加载我的内容脚本需要大约 7 秒。显然,这并不理想。所以我想到了将所有p 标签发送到背景页面,然后它将p 单词与数组进行比较,一旦确定了哪个匹配项,它就会向内容脚本发送一条消息,其中包含仅位于p 标签和我的数组中的单词的较小数组。
现在我的问题是,这可能吗?它会减少加载时间吗?这有效率吗?
最后一个问题:我的清单正在使用html 形式的背景页面,但如果我还想使用后台脚本 Google 不允许这样做,那么我可以将我的背景脚本放在后台页面中吗@ 987654326@ 文件,它会加载该脚本吗?
【问题讨论】:
-
欢迎来到 SO。对于您的最后一段:SO不适用于一个多个问题。但是:你的背景 html 绝对可以包含一个 background.js。您也可以完全跳过 html,Chrome 会为您制作。
-
如果没有更多上下文,这很难说。您的建议会增加很多开销(序列化 DOM,与后台页面交换消息),如果需要 7 秒来处理选项卡中的所有标签,则将其移动到扩展程序的后台页面并不是什么大问题在用户体验方面的改进。您最好尝试提高应用程序的性能。使用 devtools 的分析器找出瓶颈并修复它。
标签: javascript jquery google-chrome google-chrome-extension