我希望Chrome扩展程序页面操作显示引荐来源网址是否为Google,但我的代码无效。
的manifest.json
"description": "Shows a page action if referrer url is google.",
"background": {
"scripts": ["background.js"],
"persistent": false
},
"page_action" :
{
"default_icon" : "icon-19.png",
"default_title" : "The referrer is Google!"
},
"permissions" : [
"declarativeContent",
"tabs"
],
"icons" : {
"48" : "icon-48.png",
"128" : "icon-128.png"
},
"manifest_version": 2
}
background.js
chrome.runtime.onInstalled.addListener(function() {
chrome.declarativeContent.onPageChanged.removeRules(undefined, function() {
chrome.declarativeContent.onPageChanged.addRules([
{
if ('document.referrer' == "https://www.google.*") {
new chrome.declarativeContent.ShowPageAction()
}
}
]);
});
});
我希望页面操作显示引荐来源网址是否为google。请帮忙。
答案 0 :(得分:2)
'document.referrer' == "https://www.google.*"
是一个无操作,因为你只是比较两个不同的字符串,它们永远不会相互相等。
同时,Declarative Content API允许您根据URL和CSS选择器显示pageAction,而不是意味着您可以访问网页中的document
对象。
您需要使用chrome.pageAction.show
来获取推荐人,您可以致电
chrome.tabs.executeScript(TAB_ID, {code: 'document.referrer;'}, (result) => console.log(referrer));