单击我的Chrome扩展程序的browserAction图标时,我想阻止它显示browserAction弹出窗口。我正在尝试使用browserAction图标来触发加载内容脚本。
我该怎么做?
以下内容并未阻止它打开:
chrome.browserAction.onClicked.addListener(function (tab) {
alert('browserAction clicked');
return false;
});
这是我的manifest.json条目:
"browser_action": {
"default_icon": {
"19": "images/icon-19.png",
"38": "images/icon-38.png"
},
"default_title": "My extension"
}
文档说This event will not fire if the browser action has a popup
但是,你可以看到我没有定义弹出窗口,但它仍然不起作用。
答案 0 :(得分:0)
当您按the extension button时,会发生以下情况。
如果您为当前标签定义了弹出窗口(例如,通过清单中的default_popup
键或chrome.browserAction.setPopup
),则会显示该弹出窗口。 chrome.browserAction.onClicked
未提升。
如果当前标签未设置(或设置为空)弹出窗口,则会调度chrome.browserAction.onClicked
。
因此,要永久禁用此功能,您只需从清单中删除default_popup
即可。要以编程方式禁用它,您需要取消设置:
chrome.browserAction.setPopup({
popup: "",
// tabId: id // optional, restrict to a single tab
});