我正在尝试使用适用于Chrome扩展程序的Google书签API(这不是不是 Google书签API,而是http://www.google.com/bookmarks/,而是Chrome Bookmarks API)。
无论如何,我只是尝试了一个简单的例子,我有background.html和下面列出的manifest.json。但是,我没有收到警告对话框。如果我切换到使用制表符事件,我不会遇到此问题。我做错了什么?
的manifest.json
{
"name": "Google Bookmark Integration",
"version": "1.0",
"description": "Integrates Chrome bookmarks with Google Bookmarks.",
"icons": { "128": "images/bookmark.ico" },
"background_page": "background.html",
"permissions": [
"bookmarks",
"http://*.google.com/bookmarks/*"
]
}
background.html
<script>
chrome.bookmarks.onCreated.addListener(function(id, bookmark) {
console.log("Bookmark Created");
});
</script>
答案 0 :(得分:1)
JavaScript是动态类型的,函数定义不应该有类型名称。而不是(string id,BookmarkTreeNode书签),你需要只写(id,书签)。你的background.html应该是:
<script>
chrome.bookmarks.onCreated.addListener(function(id, bookmark) {
alert("Dialog Box");
});
</script>
此外,显然Chrome对alert()内部扩展的支持有限。 (在这种特殊情况下,它对我有用,但我现在发现了其他情况,但不是。)请尝试使用console.log()。 “调试”的Chrome扩展程序文档页面提供了有关如何打开background.html页面的开发人员工具/ JavaScript控制台的说明,您需要这样做。
答案 1 :(得分:1)
要回答我自己的问题,这里的问题是,不仅需要将权限设置为“书签”,还需要将它们设置为“标签”。一旦我这样做,插件就会识别出添加和删除书签。
非常违反直觉,但这是解决方案。