如果在Firefox的manifest.json中指定了内容脚本,Firefox还将为已打开的选项卡加载内容脚本并执行它们,即使选项卡已处于已加载和就绪状态。
在为已打开的标签安装扩展程序时,Google Chrome不会添加任何内容脚本。在为较旧的选项卡刷新页面时,将加载内容脚本。
我想问一下Firefox的行为是预期的还是bug?
答案 0 :(得分:5)
就兼容性而言,这是一个错误。
最后一点非常重要,可能是Chrome默认情况下没有这样做的原因。在某些时候,我针对此问题提出了very long post - 如果您要将此报告为Mozilla的错误,请将其包括在内。还有与此feature request相关的内容。
什么是明智的(向后兼容)是在清单中的内容脚本描述中添加一个参数 - 是否注入现有页面。开发人员可以保证副作用得到妥善处理。这通常是requires even more code,只需与旧脚本进行通信,即需要关闭和清理。