Chrome 扩展:在页面加载前注入 JS [英] Chrome extension: Inject JS before page load
问题描述
是否可以在页面加载之前注入JS,或者是否需要使用内容脚本和方式来完成文档?
Is it possible to inject JS before page load, or is it necessary to use content scripts and way for the document to finish?
比如,有没有一种更快的方式来执行JS,打开页面就变成红色?
For example, is there a faster way to execute JS that turns the page red as soon as it's opened?
推荐答案
在清单文件中使用 "run_at": "document_start"
声明一个内容脚本,让它尽快运行可能,即在构建文档根之后(当 尚不存在时).
Declare a content script in the manifest file with "run_at": "document_start"
to get it to run as soon as possible, i.e. right after constructing the document root (when <head>
does not exist yet).
对于您非常具体的示例,最好改为声明内容样式,类似于内容脚本,但使用 "css"
键而不是 "js"代码>.
For your very specific example, it might be better to declare a content style instead, similar to content scripts, but using the "css"
key instead of "js"
.
如果想尽快动态运行脚本,那么调用chrome.tabs.executeScript
当 chrome.webNavigation.onCommitted
事件被触发.
If you want to dynamically run a script as soon as possible, then call chrome.tabs.executeScript
when the chrome.webNavigation.onCommitted
event is triggered.
这篇关于Chrome 扩展:在页面加载前注入 JS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!