Gop*_*iva 4 javascript google-chrome google-chrome-extension
我是谷歌Chrome扩展程序开发的新手.我有以下两个问题
当我page_action在manifest.json中使用时弹出窗口没有出现,但在我使用时出现browser_action.我想知道为什么?或者我做错了
此图标也显示非活动状态.当我使用时browser_action,图标显示处于活动状态(意味着我可以看到颜色,如果激活,或者我可以看到黑白图标,当不活动时)
的manifest.json
{
"manifest_version": 2,
"name": "Getting started example",
"description": "This extension shows a Google Image search result for the current page",
"version": "1.0",
"page_action": {
"default_icon": "icon.png",
"default_popup": "popup.html",
"default_title":"getStarted Extension"
},
"permissions": [
"activeTab",
"https://ajax.googleapis.com/"
]
}
Run Code Online (Sandbox Code Playgroud)
更新:
感谢Teepemm.按照他的解释,并用代码添加答案
感谢Teepemm指导我正确解释,所以为了使图标处于活动状态和非活动状态,您必须使用chrome.pageAction.show(tabId)(激活图标)和chrome.pageAction.hide(tabId)(停用图标)=> https://developer.chrome.com/扩展/ pageAction#方法出现
您需要通过从client.js调用此方法从background.js调用此方法
//background.js
chrome.extension.onMessage.addListener(
function(request, sender, sendResponse) {
if (request.message === "activate_icon") {
chrome.pageAction.show(sender.tab.id);
}
});
//content-script.js
chrome.runtime.sendMessage({"message": "activate_icon"});
Run Code Online (Sandbox Code Playgroud)
因此,一旦您的扩展图标处于活动状态,单击该图标将显示弹出窗口.因此,仅当图标处于活动状态时,弹出窗口才会出现.
希望这可以帮助
您需要使用后台页面(或更好的事件页面)来调用chrome.pageAction.show.
你选择了一个不幸的时间来开发一个chrome页面动作.Google 最近改变了页面操作的工作方式,而且文档还没有真正赶上.以前,页面操作出现在地址栏中,并且只出现在您调用的选项卡上show.现在,页面操作显示在地址栏的右侧(除非您将它们移动到镶边菜单中),始终存在,但仅在您调用时才处于活动状态show.因此,功能仍称show和hide,尽管他们的作用更类似于enable和disable.
| 归档时间: |
|
| 查看次数: |
1164 次 |
| 最近记录: |