Javascript Chrome扩展:页面加载速度快于扩展代码

Javascript Chrome扩展:页面加载速度快于扩展代码,javascript,google-chrome,google-chrome-extension,browser-extension,Javascript,Google Chrome,Google Chrome Extension,Browser Extension,我在工作的扩展,需要更新页面文本后,页面加载。我在“content\u script中使用窗口。onload” 由于我需要大量测试我的更改,我决定创建一个包含几段文字的小页面,并将其放入我的web服务器中。但是,当此页面加载时,扩展名的window.onload不会触发,在任何其他internet页面上它都可以正常工作 我开始了调查,发现这是因为页面的加载速度。因此,页面加载速度基本上比扩展代码快 通过在链接到外部站点的身体上添加背景图像,对其进行验证。像这样: body { backg

我在工作的扩展,需要更新页面文本后,页面加载。我在“content\u script中使用窗口。onload

由于我需要大量测试我的更改,我决定创建一个包含几段文字的小页面,并将其放入我的web服务器中。但是,当此页面加载时,扩展名的window.onload不会触发,在任何其他internet页面上它都可以正常工作

我开始了调查,发现这是因为页面的加载速度。因此,页面加载速度基本上比扩展代码快

通过在链接到外部站点的身体上添加背景图像,对其进行验证。像这样:

body
{
    background: url(http://colourunity.com/img/2013/07/autumn-wallpaper-computer-14172-hd-widescreen-wallpapers.jpg) no-repeat;
}
因此,页面的加载速度减慢,扩展有足够的时间加载,并且窗口。onload触发

当然,我不担心扩展工作,因为页面加载如此之快的情况太少见了

但仍然-是否有任何方法可以绕过此问题?


谢谢。

内容脚本的
窗口对象与页面的对象不同。从:

值得注意的是,页面和扩展共享的JavaScript对象会发生什么情况-例如,
window.onload
事件每个孤立的世界都可以看到它自己的对象版本。

因此,在内容脚本中侦听此事件不会按您的意图工作,因为它不是您想要的

不管怎样,这并不重要:您可以通过
run\u at
选项指定在哪个点执行脚本。例如,如果您选择在
document\u idle
运行它,则可以保证它在页面的
window.onload
事件之后执行


换句话说,您可以简单地停止使用
窗口.onload
事件,直接运行所需的代码。

页面的加载速度并不快于扩展代码,浏览器会先简单地执行页面,然后执行扩展代码。看见