Google chrome extension 显示页面上的弹出窗口\u操作

Google chrome extension 显示页面上的弹出窗口\u操作,google-chrome-extension,Google Chrome Extension,没有显示弹出窗口时,我遗漏了什么 在扩展文件夹中,我有四个文件。我将该文件夹作为扩展名加载。我可以看到图标,但当我点击它时,弹出窗口不会显示。为什么? content\u script.js:空(刚刚添加以便加载扩展) icon.png:当我加载扩展时,它会显示出来 manifest.json: { “名称”:“弹出式poc”, “版本”:“1.4”, “说明”:“简单弹出示例”, “内容脚本”:[ { “匹配项”:[“”], “js”:[“content_script.js”] } ], “页

没有显示弹出窗口时,我遗漏了什么

在扩展文件夹中,我有四个文件。我将该文件夹作为扩展名加载。我可以看到图标,但当我点击它时,弹出窗口不会显示。为什么?

  • content\u script.js
    :空(刚刚添加以便加载扩展)
  • icon.png
    :当我加载扩展时,它会显示出来
  • manifest.json
  • {
    “名称”:“弹出式poc”,
    “版本”:“1.4”,
    “说明”:“简单弹出示例”,
    “内容脚本”:[
    {
    “匹配项”:[“”],
    “js”:[“content_script.js”]
    }
    ],
    “页面操作”:{
    “默认名称”:“显示地图”,
    “默认图标”:“icon.png”,
    “默认弹出窗口”:“popup.html”
    },
    “清单版本”:2
    }
    
  • popup.html
  • 
    弹出窗口
    这是尸体
    
    清单.json中的
    页面操作
    替换为“
    浏览器操作
    ”。您应该能够以这种方式在所有页面上看到弹出窗口

    它可能与以下内容重复: 但我似乎没有足够的声望点来标记它


    仅针对特定主机URL模式的弹出窗口 (编辑)

    如果希望弹出窗口仅在某些站点上可用(例如,仅在Google上可用),则需要在清单中指定
    declarativeContent
    权限,并在后台脚本中进行一些设置

    因此,您的
    manifest.json
    将如下所示:

    {
    “名称”:“弹出式poc”,
    “版本”:“1.4”,
    “说明”:“简单弹出示例”,
    “权限”:[“declarativeContent”],
    “内容脚本”:[
    {
    “匹配项”:[“https://www.google.com/*"],
    “js”:[“content_script.js”]
    }
    ],
    “背景”:{
    “脚本”:[“background.js”],
    “持续”:假
    },
    “页面操作”:{
    “默认名称”:“显示地图”,
    “默认图标”:“icon.png”,
    “默认弹出窗口”:“popup.html”
    },
    “清单版本”:2
    }
    
    您的
    background.js
    如下所示:

    chrome.runtime.onInstalled.addListener(函数(){
    chrome.declarativeContent.onPageChanged.removeRules(未定义,函数(){
    chrome.declarativeContent.onPageChanged.addRules([{
    条件:[新建chrome.declarativeContent.PageStateMatcher]({
    pageUrl:{hostEquals:'www.google.com'},
    })
    ],
    操作:[新建chrome.declarativeContent.ShowPageAction()]
    }]);
    });
    });
    

    此代码主要来自。

    但我需要的是页面操作,而不是浏览器操作。我需要更改图标。谢谢,我应该如何匹配所有URL?我知道了,只要删除“pageUrl:{hostEquals:'www.google.com'}”或所有规则,就可以了。谢谢