我在弹出窗口中点击按钮时使用some AJAX calls:
var xhr = new XMLHttpRequest();
xhr.open("GET", yourURL, true);
xhr.send();
chrome.tabs.create({url:<some url here>});
问题是单击按钮后弹出窗口会立即关闭,我认为这就是为什么ajax调用没有完成。
这是一个常见问题吗?我该怎么做才能确保ajax调用有足够的时间来完成?
答案 0 :(得分:2)
这是为背景页面制作的。将代码移动到背景页面中的某些myFunction()
,然后从弹出窗口中调用它:
chrome.extension.getBackgroundPage().myFunction()
答案 1 :(得分:0)
请求完成后需要回调。
var xhr = new XMLHttpRequest();
xhr.open("GET", yourURL, true);
xhr.onreadystatechange = function() {
if (xhr.readyState===4 && xhr.status===200) {
chrome.tabs.create({url:<some url here>});
}
}
xhr.send();