为什么安装Chrome应用后,它会在新标签上触发?

时间:2017-12-28 22:13:17

标签: javascript google-chrome google-chrome-extension

我创建了一个Chrome应用,你可以在这里试试

https://chrome.google.com/webstore/detail/style-scout/chbdclbnkfcocaolknbjmmppendkmebh

但是在我安装它之后我打开了一个新的点击应用程序立即触发,并且只是第一次...为什么会发生这种情况?

清单是

{
    "background":
    {
        "scripts": ["background.js"]
    },
    "browser_action":
    {
        "default_icon": "icon-128.png",
        "default_title": "Style Scout"
    },
    "content_security_policy": "script-src 'self' https://ssl.google-analytics.com; object-src 'self'",
    "name": "Style Scout",
    "short_name": "Style Scout – Fonts & Colors Finder",
    "description": "Fonts & Colors Finder",
    "homepage_url": "https://stylescout.org",
    "icons":
    {
        "16": "icon-16.png",
        "48": "icon-48.png",
        "128": "icon-128.png"
    },
    "permissions": ["tabs", "http://*/*", "https://*/*", "storage"],
    "version": "0.612",
    "manifest_version": 2,
    "content_scripts": [
    {
        "matches": ["<all_urls>"],
        "js": ["activate-np-chrome.js"]
    }],
    "web_accessible_resources": ["np-chrome.js"]
}

background.js

chrome.browserAction.onClicked.addListener(function(tab) {
    chrome.tabs.executeScript(tab.id, {
        file: "np-chrome.js"
    })
});

np-chrome.js是我的应用程序的实际完整脚本...

1 个答案:

答案 0 :(得分:0)

好的,我完全删除了这部分

  "content_scripts": [
{
    "matches": ["<all_urls>"],
    "js": ["activate-np-chrome.js"]
}],
"web_accessible_resources": ["np-chrome.js"]

现在它可以工作,因为我不知道content_scripts实际上是为每个标签注入和触发脚本,而我只需要在用户点击我的浏览器按钮时触发我的脚本