2016-05-14 96 views
0

因此,我正在开发Chrome扩展程序,并且希望将变量发送到内容脚本。但是,变量只能使用XMLHTTP请求获得,并且不会立即到达。另外,内容脚本在加载标签时执行。在执行内容脚本之前,有什么方法可以等待变量变为空而不是空吗?谢谢。Chrome扩展程序内容脚本:等待变量

+0

问题,为什么内容脚本无法加载它?我们需要更多细节。 – Xan

+0

如果内容脚本没有正确的权限,http请求将只通过直接从主脚本发送,因为它需要登录到正在从中检索数据的站点上的帐户。不知道这是否有意义,请告诉我,如果我不是。 –

+0

到目前为止,这并没有多大意义。 Cookie也是共享的,也是跨源许可。 – Xan

回答

0

假设你在后台页面发送ajax调用。

  1. 使用Programmatic injection而不是将内容脚本包含在manifest.json中。你可以在你的ajax回调中调用chrome.tabs.executeScript
  2. 或者您可以使用Message Passing在内容脚本和背景页面之间进行通信。将原始内容脚本逻辑封装为函数,只在从后台页面接收消息时调用它,而后台页面会在ajax调用成功后向内容脚本发送消息。
相关问题