Google chrome extension 通过chrome扩展扫描文本以自动启动链接

Google chrome extension 通过chrome扩展扫描文本以自动启动链接,google-chrome-extension,background,manifest,Google Chrome Extension,Background,Manifest,我对chrome扩展相当陌生,我正在尝试制作一个简单的扩展,自动在我的电子邮件中启动链接。稍后我将对其进行修改,但现在,这是我所要做的全部。我如何让chrome扩展自动读取当前选项卡上的文本,或者当我打开电子邮件时,如果我可以得到具体的信息?我已经设置了一个清单文件,目前可以让扩展按钮启动一个链接,但我更希望这种情况自动发生,因为我不想在点击链接本身时点击按钮启动链接 manifest.json { "manifest_version": 2, "name": "MT task lau

我对chrome扩展相当陌生,我正在尝试制作一个简单的扩展,自动在我的电子邮件中启动链接。稍后我将对其进行修改,但现在,这是我所要做的全部。我如何让chrome扩展自动读取当前选项卡上的文本,或者当我打开电子邮件时,如果我可以得到具体的信息?我已经设置了一个清单文件,目前可以让扩展按钮启动一个链接,但我更希望这种情况自动发生,因为我不想在点击链接本身时点击按钮启动链接

manifest.json

{
  "manifest_version": 2,

  "name": "MT task launcher",
  "description": "This extension launches Task Links in emails",
  "version": "1.0",

  "background": {
    "scripts": ["task.js"]
  },

  "browser_action": {
    "default_icon": "icon.png",
    "default_title": "Email Task Launcher"
  },
  "permissions": [
    "activeTab"
  ]
}
task.js

chrome.browserAction.onClicked.addListener(function(tab) {
  var action_url = "http://www.reddit.com";

  chrome.tabs.create({ url: action_url });
});

看一看,出于您的目的,我认为您应该使用内容脚本(注入当前网页),然后阅读DOM并获取所有链接。要打开链接,您可以呼叫或通过传递消息,然后通过

打开链接。有两种方法可供选择,即编辑分机的本地副本或将呼叫插入分机

  • 将代码注入为,使用清单文件中定义的匹配规则

  • 背景页面使用“chrome.tabs.onUpdate”。另外,使用“chrome.tabs.executeScript”注入脚本


  • 谢谢,这实际上帮了我的忙。但是,您知道如何在每次url更改时(例如,当我打开电子邮件时)使其工作吗。我目前使用了setInterval函数,但显然这不是我的想法。我已经阅读了chrome.tabs.onUpdate事件,但我不知道该放在哪里。chrome.tabs.onUpdate用于后台脚本,您必须使用它让内容脚本读取所有链接并打开它们。另一个好方法是使用纯javascript检测内容脚本中的url更改事件,您可以查看