提问人:Fabrício Matté 提问时间:4/11/2013 更新时间:4/11/2013 访问量:1114
将 onClicked 处理程序添加到浏览器操作中,而无需弹出?
Add onClicked handler to browser action without popup?
问:
我从Chrome扩展程序开始。
我的扩展有 2 个在页面加载时执行。我想从其中一个 JS 文件中为我的浏览器操作添加一个处理程序。content_scripts
onClicked
基本上我想做的是chrome.browserAction.onClicked.addListener
,但我在类似的问题中读到,这仅适用于弹出式html文件。我没有使用弹出文件,因为我目前不需要弹出文件,而且我需要我的 JS 在全局范围内运行(因为它没有 )。default_popup
这是我的:manifest.json
{
"manifest_version": 2,
"name": "Foo",
"description": "Foo description.",
"version": "0.0.0.1",
"permissions":[
"tabs", "http://*/*", "https://*/*"
],
"browser_action": {
"default_icon": "icon.png"
},
"content_scripts": [
{
"matches": ["http://*/*", "https://*/*"],
"js": ["jquery1.9.1.min.js", "foo.js"]
}
]
}
对不起,我的谷歌搜索技能找不到如何做到这一点。有没有办法将处理程序附加到我的浏览器操作,或者我是否需要一个 html 弹出窗口?onClicked
答:
5赞
BeardFist
4/11/2013
#1
决定将我过长的评论移到答案中。
如果您定义了一个弹出窗口,则该事件永远不会触发,但如果没有弹出窗口,它就可以正常工作。只需将处理程序弹出到您的后台页面中,它应该可以正常工作。请注意,以及几乎所有其他 API 都无法从 访问,因此您需要使用背景
或事件
页面。onClicked
chrome.browserAction
chrome.*
content script
评论
0赞
Less
10/10/2014
实际上你可以使用一些 API 方法,比如 developer.chrome.com/extensions/content_scriptschrome.*
chrome.extension
0赞
BeardFist
10/10/2014
@Less这就是为什么我说“差不多”,因为你可以使用的非常有限。
评论