chrome扩展:从弹出窗口发送数据到取消链接js文件

时间:2012-06-16 17:10:38

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

我正在搞乱Chrome扩展。 我得到了popup html中的一个litell表单,我试图用用户输入做某事。 我有一个在popup.html中链接的文件,它保存了这个函数:

function click(e) {
chrome.tabs.executeScript(null, {
    file: "theJs.js"
});

}

现在在文件theJs.js中,我编写了我想要在当前正在运行的选项卡上执行的代码(可以在当前选项卡上获取和设置信息)。

所以我的气氛是:

如何从popup.html获取信息,并将其发送到theJs.js文件, 所以我可以在当前标签上使用用户输入吗?

有可能吗?

(对不起我的英文)

1 个答案:

答案 0 :(得分:1)

使用message passing

content.js

chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
    if (request.type == 'apply') {
        applySettings(request.settings);
        sendResponse();
    }
});

popup.js

chrome.tabs.getSelected(function(tab) {
    chrome.tabs.sendRequest(tab.id, { type: "apply", name: name, settings: settings },
        function(response) {
            showMessage('success', '<strong>' + name + '</strong> applied.');
        }
    );
});