Javascript Chrome扩展-仅更改活动选项卡的默认图标

Javascript Chrome扩展-仅更改活动选项卡的默认图标,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我正在构建一个简单的扩展,它需要根据页面中是否存在JS变量来更改默认的_图标。就这么简单,至少这个功能 在这种情况下,我成功地更改了每个页面加载时的图片,但我想更进一步,每当用户更改其关注的选项卡时,都会更改用户浏览器中所有加载选项卡的图片。 我无法仅为活动选项卡更改默认的_图标 有谁知道我该怎么做? (我还是编写Chrome扩展的初学者) My content.js: if (test == "OK") { // Setting OK Icon chrome.runtime.s

我正在构建一个简单的扩展,它需要根据页面中是否存在JS变量来更改默认的_图标。就这么简单,至少这个功能

在这种情况下,我成功地更改了每个页面加载时的图片,但我想更进一步,每当用户更改其关注的选项卡时,都会更改用户浏览器中所有加载选项卡的图片。 我无法仅为活动选项卡更改默认的_图标

有谁知道我该怎么做? (我还是编写Chrome扩展的初学者)

My content.js:

if (test == "OK") {
    // Setting OK Icon
    chrome.runtime.sendMessage({"message": "Existing"});
}
else if (test == "NOK") {
    // Setting NOK Icon
    chrome.runtime.sendMessage({"message": "Not existing"});
}
My background.js:

chrome.runtime.onMessage.addListener(
  function(request, sender, sendResponse) {
    if( request.message === "Existing" ) {
        chrome.browserAction.setIcon({path:"OKicon.png"});
    }

    if( request.message === "Not Existing" ) {
        chrome.browserAction.setIcon({path:"NOKicon.png"});
    }
  }
);

你基本上就在那里。您只需将内容脚本中的逻辑包装为对
窗口焦点
事件的回调

window.onfocus = function(){
  if (test == "OK") {
      // Setting OK Icon
      chrome.runtime.sendMessage({"message": "Existing"});
  } else {
      // Setting NOK Icon
      chrome.runtime.sendMessage({"message": "Not existing"});
  }
}

当用户更改焦点时,
后台
脚本将从
上下文
脚本接收运行时消息,并相应地更改扩展图标。

基本上就是这样。您只需将内容脚本中的逻辑包装为对
窗口焦点
事件的回调

window.onfocus = function(){
  if (test == "OK") {
      // Setting OK Icon
      chrome.runtime.sendMessage({"message": "Existing"});
  } else {
      // Setting NOK Icon
      chrome.runtime.sendMessage({"message": "Not existing"});
  }
}

当用户更改焦点时,
后台
脚本将从
上下文
脚本接收运行时消息,并相应地更改扩展图标。

基本上就是这样。您只需将内容脚本中的逻辑包装为对
窗口焦点
事件的回调

window.onfocus = function(){
  if (test == "OK") {
      // Setting OK Icon
      chrome.runtime.sendMessage({"message": "Existing"});
  } else {
      // Setting NOK Icon
      chrome.runtime.sendMessage({"message": "Not existing"});
  }
}

当用户更改焦点时,
后台
脚本将从
上下文
脚本接收运行时消息,并相应地更改扩展图标。

基本上就是这样。您只需将内容脚本中的逻辑包装为对
窗口焦点
事件的回调

window.onfocus = function(){
  if (test == "OK") {
      // Setting OK Icon
      chrome.runtime.sendMessage({"message": "Existing"});
  } else {
      // Setting NOK Icon
      chrome.runtime.sendMessage({"message": "Not existing"});
  }
}

当用户更改焦点时,
后台
脚本将从
上下文
脚本接收运行时消息,并相应地更改扩展图标。

好的,您应该查看

整数(可选)
tabId

将更改限制在选定特定选项卡时进行。选项卡关闭时自动重置

这正是我们需要的!现在,选项卡ID为:


好吧,你应该看一看

整数(可选)
tabId

将更改限制在选定特定选项卡时进行。选项卡关闭时自动重置

这正是我们需要的!现在,选项卡ID为:


好吧,你应该看一看

整数(可选)
tabId

将更改限制在选定特定选项卡时进行。选项卡关闭时自动重置

这正是我们需要的!现在,选项卡ID为:


好吧,你应该看一看

整数(可选)
tabId

将更改限制在选定特定选项卡时进行。选项卡关闭时自动重置

这正是我们需要的!现在,选项卡ID为:


实际上,它是由
setIcon
直接支持的,请看我的回答实际上,它是由
setIcon
直接支持的,请看我的回答实际上,它是由
setIcon
直接支持的,请看我的回答谢谢!就这样!我试着和那张桌子一起工作,但我不知道该放什么进去。谢谢你的时间!非常感谢你!就这样!我试着和那张桌子一起工作,但我不知道该放什么进去。谢谢你的时间!非常感谢你!就这样!我试着和那张桌子一起工作,但我不知道该放什么进去。谢谢你的时间!非常感谢你!就这样!我试着和那张桌子一起工作,但我不知道该放什么进去。谢谢你的时间!