chrome.declarativeContent.PageStateMatcher条件不行
chrome.declarativeContent.PageStateMatcher conditions not
我开始学习如何开发 chrome 扩展(清单 3),但我有一些我不明白的结果。
我的最终目标是在特定网站打开时获取 cookie 值,向该网站发送请求(获取)并显示在新选项卡中收到的 json(我开发了一个 javascript发送请求并且它正在工作,但我现在想自动获取带有 chrome 扩展名的 cookie。
要开始我的学习,第一步是在访问网站时打开一个新标签页。我在 background.js 中尝试了以下代码,但是当我激活我的扩展时,即使网站未打开,也不会创建新选项卡,即使我的情况正常,也不会创建新选项卡。然后我想我错过了什么,但我不知道是什么。
有人可以向我解释为什么,我哪里错了,如果不是正确的方法,我应该看到哪个 chrome API?
chrome.runtime.onInstalled.addListener(function () {
chrome.declarativeContent.onPageChanged.removeRules(undefined, function () {
chrome.declarativeContent.onPageChanged.addRules([
{
conditions: [
new chrome.declarativeContent.PageStateMatcher({
pageUrl: { hostEquals: "www.google.com", schemes: ["https"] },
}),
],
actions: [chrome.tabs.create({})],
},
]);
});
});
您的代码 actions: [chrome.tabs.create({})]
有误。安装扩展程序时将调用方法 chrome.tabs.create
。也许您想在单击扩展时触发 popup.html。如果是这样,您可以使用 actions: [ new chrome.declarativeContent.ShowPageAction() ]
。然后使用 chrome.action.onClicked.addListener
, see here.
如果你想在打开某个网站时自动打开一个新标签,你可以使用chrome.tabs.onCreated.addListener
,see here,处理事件,过滤url,然后做某事.
我开始学习如何开发 chrome 扩展(清单 3),但我有一些我不明白的结果。 我的最终目标是在特定网站打开时获取 cookie 值,向该网站发送请求(获取)并显示在新选项卡中收到的 json(我开发了一个 javascript发送请求并且它正在工作,但我现在想自动获取带有 chrome 扩展名的 cookie。
要开始我的学习,第一步是在访问网站时打开一个新标签页。我在 background.js 中尝试了以下代码,但是当我激活我的扩展时,即使网站未打开,也不会创建新选项卡,即使我的情况正常,也不会创建新选项卡。然后我想我错过了什么,但我不知道是什么。
有人可以向我解释为什么,我哪里错了,如果不是正确的方法,我应该看到哪个 chrome API?
chrome.runtime.onInstalled.addListener(function () {
chrome.declarativeContent.onPageChanged.removeRules(undefined, function () {
chrome.declarativeContent.onPageChanged.addRules([
{
conditions: [
new chrome.declarativeContent.PageStateMatcher({
pageUrl: { hostEquals: "www.google.com", schemes: ["https"] },
}),
],
actions: [chrome.tabs.create({})],
},
]);
});
});
您的代码 actions: [chrome.tabs.create({})]
有误。安装扩展程序时将调用方法 chrome.tabs.create
。也许您想在单击扩展时触发 popup.html。如果是这样,您可以使用 actions: [ new chrome.declarativeContent.ShowPageAction() ]
。然后使用 chrome.action.onClicked.addListener
, see here.
如果你想在打开某个网站时自动打开一个新标签,你可以使用chrome.tabs.onCreated.addListener
,see here,处理事件,过滤url,然后做某事.