谷歌Chrome扩展消息传递与run_at document_start

Google Chrome Extension message passing with run_at document_start

本文关键字:at document start run Chrome 扩展 消息传递 谷歌      更新时间:2023-09-26

我有一个关于消息传递(content_script.js发送请求和background.html发送响应)和JQuery $(document).ready()函数之间的执行控制的问题。

我在清单文件中设置了"run_at": "document_start",并根据文档。content_script.js将在CSS之后和任何脚本之前执行。在这种情况下,假设content_script.js改变了html页面的背景颜色,可以改变页面颜色的函数将在任何脚本之前被调用。

我的问题是关于content_script.js和background.html之间的消息传递。

如果我是正确的:例如事件

chrome.extension.sendRequest({storage: 'foo'}, function(response) {
      runAfterResponseReceived();});

在content_script.js中定义,请求将在任何脚本运行之前发送到后台页面。一旦发送此请求,其他脚本就可以运行,而无需等待响应返回(解除阻塞)。因此,当响应返回时,content_script.js找到空闲时间,并执行函数runafterresponserreceived()。

然后,我如何将其更改为阻塞行为,以便我可以在返回响应后执行"任何脚本"。

我希望我已经解释了我的问题。谢谢。

对不起,不可能。