Chrome扩展程序在秒数后停止加载页面

时间:2016-11-07 14:23:32

标签: javascript google-chrome google-chrome-extension

这与此帖类似,但我不知道如何在没有点击操作的情况下让它正常工作:

chrome extension : Stop loading the page on launch

我想创建一个不需要点击工作的Chrome扩展程序。所以我希望它在它们启动后的一定秒数后停止加载所有页面。

因此,如果安装了扩展程序并打开了新选项卡,页面将仅加载10秒钟,然后停止加载。

如何通过Chrome扩展程序在所有页面上停止X秒后加载页面?

1 个答案:

答案 0 :(得分:1)

好吧,您链接到的问题使用Programmatic Injection添加内容脚本以停止加载。如果你有时只想要它,这很有效。

如果您希望始终使用内容脚本,define it in the manifest

  

如果应始终注入内容脚本的代码,请使用content_scripts字段在扩展程序清单中注册它

"content_scripts" : [{
  "matches": ["<all_urls>"],
  "js": ["stop.js"],
  "run_at": "document_start"
}],

通过这种方式,您知道stop.js在页面加载开始时会与每个页面一起加载。然后你可以实现你的逻辑。死亡简单的解决方案:

// stop.js
setTimeout(() => {window.stop()}, 10000);

请注意,这会触发安装时权限警告“阅读并修改您访问的所有网站上的所有数据”,因为您无法再依赖"activeTab",而是在没有用户互动的情况下执行某些操作。

如果您希望在子帧中也发生这种情况,您可能还需要考虑将"all_frames": true添加到内容脚本声明中。

相关问题