首页 > 解决方案 > 当我在扩展中设置“default_popup”时,内容脚本不运行

问题描述

当我没有设置默认弹出窗口时,我的内容脚本和后台脚本运行完美。当我以某种方式执行后者时,背景和内容脚本都不会在控制台中提供任何输出。

1.manifest.json

{
    "manifest_version": 2,
    "name": "KS Scrapper",
    "description":"Simple Scrapper",
    "version" : "1.0.0",
    "icons":{"128":"images/ks_logo_128.png"},
    "browser_action" : {
        "default_icon" : "images/ks_logo_19.png",
        "default_popup" : "popup.html"
    },
    "content_scripts" : [
            {
            "matches": ["<all_urls>"],
            "js" : ["jquery-2.1.4.min.js", "popup.js"],
            "css" : ["c.css"]
        }
    ],
    "web_accessible_resources": [
        "css/style.css"
    ],
    "permissions": ["tabs"],
    "background":{
        "scripts":["background.js"]
    }
}

2.popup.js

chrome.runtime.onMessage.addListener(gotMessage);

function gotMessage(message, sender, sendResponse){
    console.log(message);
    if(message!=null){
        var b = document.getElementById("get_url");
        document.getElementById("url").value = message;
    } }

3.background.js

console.log("background running")

chrome.browserAction.onClicked.addListener(buttonClicked)

function buttonClicked(tab){
    function getLink() {
        chrome.tabs.query({
            active: true,
            currentWindow: true
        }, function (tabs) {
            var tabURL = tabs[0].url;
            console.log(tabURL);
            chrome.tabs.sendMessage(tab.id, tabURL)
            console.log("message sent");
        });
    }
    getLink();

}

如果有人可以分享解决方案或指导我特别是我必须重做或研究的任何事情,我将不胜感激。非常感谢。

标签: javascriptjquerygoogle-chrome-extensiongoogle-chrome-devtools

解决方案


推荐阅读