Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Chrome扩展:在页面呈现/加载之前获取页面的html_Javascript_Jquery_Html_Google Chrome Extension - Fatal编程技术网

Javascript Chrome扩展:在页面呈现/加载之前获取页面的html

Javascript Chrome扩展:在页面呈现/加载之前获取页面的html,javascript,jquery,html,google-chrome-extension,Javascript,Jquery,Html,Google Chrome Extension,上下文:我正在制作一个从网页中提取主要内容的程序。然而,目前我正在做的是等待整个网页加载和呈现(这可能需要很长时间,特别是对于包含大量脚本的页面) 我想要的是,当页面开始加载时,只需要正确地获取页面的html,这样我就可以提取主要内容,而不必等待整个页面呈现和加载 run_at: "document_start" 在mainfest.json中,该文件不起作用,因为它是在html出现之前运行的。您应该尝试“document\u end”,它应该比默认的“document\u idle”更早运行

上下文:我正在制作一个从网页中提取主要内容的程序。然而,目前我正在做的是等待整个网页加载和呈现(这可能需要很长时间,特别是对于包含大量脚本的页面)

我想要的是,当页面开始加载时,只需要正确地获取页面的html,这样我就可以提取主要内容,而不必等待整个页面呈现和加载

run_at: "document_start"

在mainfest.json中,该文件不起作用,因为它是在html出现之前运行的。

您应该尝试
“document\u end”
,它应该比默认的
“document\u idle”
更早运行。

使用
在“document\u start”
和事件侦听器一起运行(或者如果您想在加载文档时处理文档)在内容脚本中。

但是,文档结束也可能需要比需要更长的时间,特别是当页面有iFrame时(例如,很多用于执行google auth的操作,并且不考虑iFrame中的注入)。最近,我成功地将扩展扩展扩展到document_start,但不得不修复一些库,这些库希望dom在脚本加载期间出现(而不是在稍后移动init)。如果html还不存在,只需使用timeout/interval等待“当初始html文档完全加载和解析后,将触发DOMContentLoaded事件”。如果您正在等待
DOMContLoaded
事件,则
文档结束
没有区别。我投了反对票,因为这并不能解决当页面开始加载时,
doxxx正确的问题,
@VicX,区别在于注入内容脚本需要时间。Chrome在创建运行时环境时做了很多中间工作。铬开发者认识到问题并在优化,例如,JS绑定在C++中被重写。