是否可以使用chrome扩展名与非活动选项卡中的内容元素进行交互

Is it possible to interact with the content elements in a not active tab with chrome extention?

本文关键字:元素 交互 chrome 可以使 扩展名 选项 非活动 是否      更新时间:2024-01-22

我会尽可能好地问我的问题:

在Chrome浏览器中,我有两个选项卡正在工作(一个是google.com,另一个是bing.com),并且选择了谷歌加载的选项卡。谷歌搜索框的输入元素id为"gbqfq",必应搜索框的输出元素id为为"sb_form_q"。

我的manifest.json文件的内容如下:

{
  "name": "MyExtention",
  "version": "0.1.1",
  "description": "Description",
  "content_scripts": [
    {
      "matches": ["*://*.bing.com/*","*://*.google.com/*"],
      "css": ["basic.css"],
      "js": ["jquery.js", "contentscript.js"]
    }
  ],
 "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",
 "web_accessible_resources": ["*"] ,
 "permissions":["tabs","*://*.bing.com/*","*://*.google.com/*"],
 "externally_connectable": {
   "matches": ["*://*.bing.com/*","*://*.google.com/*"]
 },
 "background": {"scripts": ["background.js"] },
   "browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
  },
  "manifest_version": 2
}

是否可以使用chrome.extension与所有打开选项卡中的元素交互?

当"google.com"answers"bing.com"的选项卡被选中(活动)时,我的chrome.extension通过id从它们中找到元素的值,但不能将元素值从选中的选项卡传递到未选中的选项卡。

我想做的是从一个选项卡的内容中获取输入元素的值,并更改另一个选项卡内容中输入元素的价值。

chrome.extensions可以这样做吗?如果可能的话;我该怎么办?

p.S:

  • 我不寻求任何其他方法来完成我的任务
  • 我只是想知道——用这种方法是否有可能实现这一目标
  • 我的chrome.extension中确实支持jquery
  • 我是新手Newbie、newb、noob或n00b是一个俚语,指新手或新人,或在任何专业或活动中缺乏经验的人

    祝你一切顺利

是的,这是可能的。您需要的是消息传递,它将允许您在内容脚本和后台页面之间发送消息。如果您在后台页面中处理输入,则可以将相关数据发送回相应的选项卡。