14

在 popup.js 中,我使用以下代码显示当前选项卡的某个 div id 内的所有文本 - 并显示在警报中。我想知道如何将 div 文本保存到 popup.js 中的变量中?

chrome.tabs.executeScript(null,code:"alert(document.getElementById(\"DIVid\").innerText.split(' '))"});

以上工作正常,但是当我尝试这个时:

var getText = chrome.tabs.executeScript(null,code:"document.getElementById(\"DIVid\").innerText.split(' ')"});

或者

var getText = chrome.tabs.executeScript(null,code:"document.getElementById(\"DIVid\").innerText.split(' ')"},function(response){return response});

没有存储任何内容。我显然是以错误的方式解决这个问题。我究竟做错了什么?

4

1 回答 1

16

使用以下代码,

var getText = Array();
chrome.tabs.executeScript(tabs[tab].id, {
    "code": "document.getElementById(\"_Your_ID_Here_\").innerText.split(' ')"
}, function (result) {
    for (i = 0; i < result[0].length; i++)
    getText [i] = result[0][i];
    console.log(getText);
});

由于chrome.api的异步性质,您在回调中有更新变量

于 2013-02-12T08:41:06.400 回答