是否可以在选项卡后面运行脚本?

时间:2016-03-31 10:46:53

标签: javascript google-chrome-extension

问题

我试图编写一个扩展程序,该扩展程序在操作DOM的选项卡上运行,并在必要时重定向到页面。

程序的确切逻辑应该能够遵循以下步骤:

  • 从后台脚本中获取一些数据
  • 重定向到第X页
  • 如果DOM中有表单然后填写它,然后再次转到第X页
  • 如果在第X页上有其他内容,则重定向到第Y页,否则请选择此选项

这些步骤只应在后台脚本打开的特定选项卡上进行。

我读过的

我已经读过Chrome扩展程序可以运行两种脚本:

  • 后台脚本
  • 内容脚本

据我所知,前者无法直接访问标签内的DOM,但他们可以通过chrome.tabs.update(..., { url: ... })将标签重定向到特定页面;而后者可以访问DOM但不能直接重定向到URL。

消息很乱

使用消息,整个脚本会非常混乱,例如我必须执行的前几个步骤:

  • background:生成选项卡并注入脚本以检查表单是否有
  • 内容:如果表单填写并提交表单,则发送邮件重定向回来
  • 后台:接收消息并重定向到请求的页面
  • 背景:(可能检测到我们在所述页面上)并注入内容脚本
  • 内容:如果有其他内容,如果有,则发送消息重定向,否则选择选项

它很快变得混乱。

问题

编写此类脚本的最佳选择是什么?

0 个答案:

没有答案