Mit*_*tch 6 javascript google-chrome google-chrome-extension
我有一个简单的 chrome 扩展,它的意思是pageAction在特定域上显示时间。
清单.json:
{
"name" : "Page action by content",
"version" : "1.1",
"description" : "Shows a page action for HTML pages containing a video",
"background" : {
"scripts": ["background.js"],
"persistent": false
},
"page_action" :
{
"default_icon" : "video-19.png",
"default_title" : "There's a <video> in this page!"
},
"permissions": [ "declarativeContent" ],
"icons" : {
"48" : "video-48.png",
"128" : "video-128.png"
},
"manifest_version": 2
}
Run Code Online (Sandbox Code Playgroud)
背景.js:
chrome.runtime.onInstalled.addListener(function () {
chrome.declarativeContent.onPageChanged.removeRules(undefined, function () {
chrome.declarativeContent.onPageChanged.addRules([
{
conditions: [
new chrome.declarativeContent.PageStateMatcher({
pageUrl: { hostSuffix: 'stackoverflow.com' },
})
],
// And shows the extension's page action.
actions: [new chrome.declarativeContent.ShowPageAction()]
}
]);
});
});
chrome.pageAction.onClicked.addListener(function (tab) {
alert('hello!');
});
Run Code Online (Sandbox Code Playgroud)
在大多数计算机上,这可以正常工作。在少数情况下,alert()用户看到的不是预期的 ,而是扩展的右键单击菜单(如果操作被禁用或右键单击,通常会显示)。图标亮起,好像它已启用,但onClicked不执行侦听器。
更奇怪的是,当最初安装扩展时,它甚至在少数计算机上也能按预期工作。只有在 Chrome 重新启动后才会出现错误行为。无论扩展程序是从 Chrome 商店加载还是解压加载,都会发生这种情况。
它也可以使用其他扩展程序(尤其是演示站点 baidu.com 的page-action-demo)进行复制。 browserActions 不受影响。
看似简单的错误是否潜伏着错误,manifest.json或者我是否需要提交错误?
正如chrome.pageAction.onClicked.addListener所说
\n\n\n\n\n如果页面操作有弹出窗口,则不会触发此事件。
\n
这意味着你的manifest.json应该包含类似的东西(你有它)
\n\n"page_action": {\n "default_title": "Google Mail", // optional;\n "default_icon": "images/icon32.png" // optional;\n} \nRun Code Online (Sandbox Code Playgroud)\n\n\n\n\n"default_popup": "popup.html" <----------------应该删除
\n
下一步是显示特定选项卡的“页面操作”。我不知道为什么,但由于某些原因,它是可见的且处于活动状态,当您单击它时,它会显示上下文弹出菜单
\n\nchrome.pageAction.show(integer tabId, function callback)\nRun Code Online (Sandbox Code Playgroud)\n\n在后台脚本 \xe2\x8f\xab 中执行此操作后
\n\n `chrome.pageAction.onClicked` \nRun Code Online (Sandbox Code Playgroud)\n\n应该触发该事件。我希望它能帮助你。
\n| 归档时间: |
|
| 查看次数: |
1516 次 |
| 最近记录: |