71

我有非常简单的扩展:

清单.json

{
  "name": "historyCleaner",
  "version": "0.1.1",
  "manifest_version": 1,
  "description": "This is my first Chrome extension",
  "background": {
    "scripts": ["cleaner.js"]
  }, 
  "permissions": [
    "history"
  ]
}

清洁器.js

chrome.history.onVisited.addListener(function(HistoryItem result) {

  console.log("it works!");
  alert("it works!");

});

我已经在谷歌浏览器中加载了它,它已打开并且......它不起作用。它不会在控制台中记录任何内容,也不会发出任何警报,更糟糕的是,我在开发人员工具的“脚本”选项卡中找不到它。我怎样才能找到它为什么不起作用?

//编辑

我已将 manifest.json 更改为这个:

{
  "name": "historyCleaner",
  "version": "0.1.5",
  "manifest_version": 1,
  "description": "This is my first Chrome extension",
  "background_page": "background.html",
  "permissions": [
    "history",
    "background"
  ]
}

并在 background.html 中嵌入 JavaScript

4

2 回答 2

109

在此处输入图像描述

而且如果你console.log("it works!");没有出现,那意味着chrome.history.onVisited还没有被解雇。

ps:对于function(HistoryItem result),您可能想将其更改为function(result)

于 2012-04-10T01:35:01.343 回答
11

此响应可能会迟到,但会帮助其他人。如果你的 background.html 有 javascript 错误,那么页面将不会加载(检查)。

要找出你的 background.html 有什么问题,请在 chrome://chrome/extensions/(即管理扩展)下单击 background.html 链接。这将加载开发人员工具,但没有 background.html。在窗口的右下角,您将看到一个红色的错误符号,单击它会提供需要修复的行号。

于 2012-07-04T00:15:08.350 回答