Function 使用executeScript从popup.html执行函数

Function 使用executeScript从popup.html执行函数,function,google-chrome,google-chrome-extension,popup,Function,Google Chrome,Google Chrome Extension,Popup,因此,我尝试使用executeScript执行popup.html函数 这就是我想做的: function atacar () { $(document).ready(function () { $("#target_attack").click(); }); } function apoiar () { $(document).ready(function () { $("#target_support").click(); }

因此,我尝试使用executeScript执行popup.html函数

这就是我想做的:

function atacar () {
    $(document).ready(function () {
        $("#target_attack").click();
    });
}

function apoiar () {
    $(document).ready(function () {
        $("#target_support").click();
    });
}

function enviar_comando (tipo) {
    chrome.windows.getCurrent(function(win) {
        chrome.tabs.getAllInWindow(win.id, function(tabs) {
            for (i = 0; i < tabs.length; i++) {
                if (tipo == "ataque") chrome.tabs.executeScript(tabs[i].id, { code: "atacar();" });
                else if (tipo == "apoio") chrome.tabs.executeScript(tabs[i].id, { code: "apoiar();" });
            }
        });
    });
}
我正在尝试执行一个名为atacar()apoiar()popup.html函数,但它不起作用

帮助?:)

由于popup.html中也有atacar()和apoiar(),因此无法从executeScript运行它们。 您可以:

  • 将这些函数也插入到提供给executeScript的代码字符串中,或
  • 更好的方法是,将这两个函数移动到a中,然后您可以像运行一样运行它们

请澄清您添加的每段代码出现的位置(是否在popup.html中?是否在内容脚本中?等等)。整个代码都在popup.html中。
                if (tipo == "ataque") chrome.tabs.executeScript(tabs[i].id, { code: "atacar();" });
                else if (tipo == "apoio") chrome.tabs.executeScript(tabs[i].id, { code: "apoiar();" });