如果在 Firefox 的 manifest.json 中指定了内容脚本,Firefox 也会为已打开的选项卡加载内容脚本并执行它们,即使选项卡已经处于加载和就绪状态。
为已打开的选项卡安装扩展程序时,Google Chrome 不会添加任何内容脚本。为旧选项卡刷新页面时会加载内容脚本。
我想问的是Firefox的行为是预期的还是bug?
最佳答案
就兼容性而言,这是一个错误。
最后一点非常重要,这可能是 Chrome 默认不这样做的原因。在某个时候,我做了一个 very long post关于这个问题 - 如果你打算将此作为错误报告给 Mozilla,请包括。还有这个feature request这是相关的。
明智的(并且向后兼容)是在 list 中的内容脚本描述中添加一个参数 - 是否注入(inject)现有页面。由开发人员来保证副作用得到处理。这通常是 requires even more code只是与旧脚本沟通它需要结束和清理。
关于firefox - Firefox Web 扩展安装时的内容脚本注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37127391/