Chrome扩展切换至已打开标签页时触发chrome.tabs.onActivated插入iframe无效的问题咨询
Chrome扩展切换至已打开标签页时触发chrome.tabs.onActivated插入iframe无效的问题咨询
我正在开发一款Chrome扩展,目前遇到了一个困扰我的问题,想向大家求助:
- 扩展初始化时,我通过
chrome.scripting.executeScript给浏览器的所有标签页都注入了内容脚本,同时在内容脚本和后台脚本中都注册了消息监听器。 - 点击扩展弹窗里的按钮后,会发送消息通知内容脚本插入一个iframe。在当前活跃页面和新打开的页面上,这个功能都能正常工作,但切换到已经打开的标签页时,内容脚本完全没有响应。
- 后台脚本的控制台日志显示已经正确识别到了切换后的标签页,但只有手动刷新这个已打开的标签页,iframe才会被成功插入。
- 我尝试过在
chrome.tabs.onActivated事件触发时重新注入脚本,但依然没有效果。
想请教各位,这种场景下正确的实现方式应该是什么?
后续补充排查结果:
后来我发现问题出在chrome.scripting.executeScript的条件判断上——这个条件写得有问题,导致脚本根本没有通过代码注入成功,之前的脚本其实是通过manifest.json配置注入的。
另外也确认了一点:不需要在onActivated事件触发时重新注入脚本,因为初始化阶段的executeScript已经完成了脚本注入工作。
备注:内容来源于stack exchange,提问作者Mihai Marinescu
相关产品推荐
相关产品推荐

