我在content.js 中获得了一个DOM Object
chrome.extension.onRequest.addListener(
function (request, sender, sendResponse) {
if (request.action == "doSomeThing") {
var oTagsSendBack = doSomeThing();
sendResponse( oTagsSendBack[1] ); // oTagsSendBack[1] 是存在的在这里还可以做别的调用, 已经试过了;
}
}
);
function doSomeThing() {
var oTags = document.getElementsByTagName("a");
var oResultTags = new Array;
for (i=0; i<oTags.length; i++){
if ( oTags[i].hasAttribute("usercard") && oTags[i].hasAttribute("node-type") ) {
oResultTags[oResultTags.length] = oTags[i];
}
}
return oResultTags;
};
在popup.js中有调用的函数, 但是出错了,获得是一个undefined返回值;
chrome.tabs.getSelected(null, function (tab) {
chrome.tabs.sendRequest(tab.id, { action: "doSomeThing" }, function (response) {
alert(response.length); //response 变成一个undefined值;
});
});
我估计是DOM Object不能在文件间传递, 请高手们帮忙;