используйте executeScript для выполнения функции из popup.html - PullRequest
0 голосов
/ 13 января 2012

Итак, я пытаюсь использовать 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();" });
            }
        });
    });
}

Посмотрите на эти строки:

                if (tipo == "ataque") chrome.tabs.executeScript(tabs[i].id, { code: "atacar();" });
                else if (tipo == "apoio") chrome.tabs.executeScript(tabs[i].id, { code: "apoiar();" });

Я пытаюсь выполнить функцию popup.html , которая называется atacar () и apoiar () , но она не работает.

Помощь? :)

1 Ответ

0 голосов
/ 14 января 2012

Поскольку atacar () и apoiar () также находятся в popup.html, вы не можете запустить их из executeScript. Вы можете либо:

  • Вставьте эти функции также в строку кода, которую вы предоставляете для executeScript, или
  • еще лучше, переместите эти 2 функции в скрипт содержимого , и затем вы сможете запускать их, как и вы.
...