Javascript Chrome扩展浏览器操作在单击时不执行任何操作

Javascript Chrome扩展浏览器操作在单击时不执行任何操作,javascript,google-chrome-extension,Javascript,Google Chrome Extension,我搜索了stackoverflow和google的扩展FAQ,但似乎找不到答案。我的chrome扩展的浏览器操作拒绝工作。。。这是我的密码。注意:我尝试过使用background.html而不是.js-no-go。它从不调用linker.js Manifest.json { "name": "name", "version": "1.0", "background": "background.js", "description": "test",

我搜索了stackoverflow和google的扩展FAQ,但似乎找不到答案。我的chrome扩展的浏览器操作拒绝工作。。。这是我的密码。注意:我尝试过使用background.html而不是.js-no-go。它从不调用linker.js

Manifest.json

{

    "name": "name",
    "version": "1.0",
    "background": "background.js",      
    "description": "test",
    "permissions": ["tabs", "http://*/*", "https://*/*"],
   "browser_action": {
        "default_title": "Test",
        "default_icon": "raindrop.png"
        }
}
background.js

chrome.browserAction.onClicked.addListener(function(tab) {
  chrome.tabs.executeScript(null, {file: "linker.js"});
});
linker.js

alert("linker is running");

plus more code here

有人有什么想法吗?

您的清单需要是
“后台页面”:“background.html”
。在
background.html
中,您需要包含
。这将添加单击后的
onClicked
侦听器,看起来
linker.js
应该会触发一个警报。

我最终将清单更改为
“background\u页面”:“background.html”
,我只是将background.js的内容放入background.html文件中,并带有`标记。重新加载扩展,单击图标仍然不会生成警报消息。还有什么问题吗?此时,您需要一步一步地进行调试。如果在
background.html
中的
标记中放置
警报
,它会触发吗?下一步要尝试的是在
chrome.browserAction.onClicked
listener中添加一个
alert
,最后我将脚本放在background.js中,并从background.html调用background.js。当我在background.html中输入一个警报时,它就工作了。当我把它放在background.js中,在chrome.browserAction.onclick之前,它就可以工作了。我如何把它放在被点击的监听器中?我有
chrome.browserAction.onClicked.addListener(函数(tab){chrome.tabs.executeScript(null,{code:“警报(\'test\\”);});
但这不起作用。对吗?
chrome.browserAction.onClicked.addListener(警报(“测试”))
当我这样做时,当我重新加载扩展时,它会立即向我发出警报,但当我实际单击它时,它不会发出警报。根据用户1137778的建议,对background.html进行更改后,你的代码会正常工作,除非你在NTP或web应用程序之类的chrome页面上……这是有道理的,因为你不允许影响它们。试着去谷歌或其他什么地方,然后单击浏览器操作。
chrome.browserAction.onClicked.addListener(function(tab) { 
    chrome.tabs.executeScript(null,{code:"alert('test!')"});
});