在我的 chrome 扩展中,我正在检查一个函数,该函数可以阻止我的 for 循环处理,直到它得到内容脚本的响应。分享下面的示例代码
function abc() {
chrome.tabs.query({'status': 'complete'}, function(tabArray) {
for (var i = 0, tab; tab = tabArray[i]; i++) {
var currentUrl = tab.url;
var tabId = tab.id;
if (currentUrl.match(otherthing)) {
chrome.tabs.sendRequest(tabId, {'type': 'getrequiredthing'},
function(response) {
if (response.isrequiredthind) {
callfunction(tabId);
}
}
);
}
}
});
}
在这里,当我得到匹配的 url 时,else if
我正在向页面发送获取一些信息的请求,如果我的信息是肯定的,我需要调用函数。但是在 for 循环中,tabId 的迭代速度非常快,即使响应是肯定的,它也会使用 next(或 next)tabId 调用 callfunction。
您能否就解决此问题发表意见,请继续等待收到此响应的 for 循环。
谢谢