如何动态更改chrome扩展图标

how to dynamically change chrome extension icon

本文关键字:chrome 扩展 图标 何动态 动态      更新时间:2023-09-26

我正在开发一个chrome扩展。这个场景有点像

当我点击图标扩展发送POST请求到服务器,并在GET响应的基础上,它在任何3个不同的if/else if/else语句进行。我正在使用页面动作来显示地址栏旁边的图标。我希望我的扩展图标在每个if/else if/else语句上动态变化。

这是我的background .js使图标可见旁边的地址栏。

    chrome.runtime.onInstalled.addListener(function() {
  chrome.declarativeContent.onPageChanged.removeRules(undefined, function() {
    chrome.declarativeContent.onPageChanged.addRules([
      {
        conditions: [
          new chrome.declarativeContent.PageStateMatcher({
          })
        ],
        actions: [ new chrome.declarativeContent.ShowPageAction() ]
      }
    ]);

});});

这是我的manifest.json

"page_action" :
{
"default_icon" : "icon-191.png",
"default_title" : "xxx",
"default_popup": "popup.html"

},

任何建议我如何改变扩展工具图标动态不同的语句?提前感谢!

文档里有。

declarativeContent API只能执行非常有限数量的动作而不是任意代码。

值得庆幸的是,chrome.declarativeContent.setIcon是一个完全符合您需要的操作。就像你已经在使用的那样使用它,除了它需要一个参数。

给文档页面一个一般的阅读