内容脚本(http://code.google.com/chrome/extensions/content_scripts.html)是否已注入预呈现页面(document.webkitVisibilityState =='prerender')?
我一直在阅读https://developers.google.com/chrome/whitepapers/prerender和https://developers.google.com/chrome/whitepapers/pagevisibility,并试图弄清楚内容脚本如何处理页面预呈现/预取。
由于
答案 0 :(得分:1)
但是,我说的是document.webkitVisibilityState,它可以是'prerender'(当页面在背景/隐形标签中时),'隐藏'或'可见'。请注意,webkitVisibilityState可以从“prerender”转换为“hidden”或“visible”,或者在“hidden”和“visible”之间来回转换,而不会对DOM进行任何更改。 (为了更好地理解这一点,请阅读我原帖中链接的文章。)
我想我已经能够确定将内容脚本注入到预渲染页面中。然而,问题出在这里:假设我的内容脚本做了一些不应该在预渲染页面上发生的事情。例如,它执行网页浏览计数或添加动画,在用户实际查看页面之前,这两者都不应该开始。因此,我的内容脚本似乎应该像https://developers.google.com/chrome/whitepapers/pagevisibility上的代码示例中所显示的那样 - 检查document.webkitVisibilityState,并且还要监听'webkitvisibilitychange'事件,并且只进行网页浏览计数/启动文档时的动画.webkitVisibilityState已经或已经转换为'visible'。
我可能刚刚回答了我自己的问题,但我只想确保自己走在正确的轨道上。 感谢
答案 1 :(得分:-1)
如上所述,您应该使用run_at设置。
链接到文档:http://code.google.com/chrome/extensions/content_scripts.html#registration