在popup.js中,我使用以下代码显示当前选项卡的某个div id中的所有文本 - 并显示在alert中。我想知道如何将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});
什么都没有存储。我显然是错误的做法。我究竟做错了什么?
答案 0 :(得分:9)
使用以下代码
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
的异步性质