我已经尝试解决这个问题很长一段时间了:我无法访问窗口的 url,因为它位于另一个域上..有一些解决方案吗?
function login() {
var cb = window.open(_url, "windowname1", 'width=800, height=600');
var pollTimer = window.setInterval(function() {
if (cb.document.url.indexOf(REDIRECT) >= 0) {
window.clearInterval(pollTimer);
var url = cb.document.url;
acToken = gup(url, 'access_token');
tokenType = gup(url, 'token_type');
expiresIn = gup(url, 'expires_in');
cb.close();
validateToken(acToken);
}
}, 100);
}
最佳答案
我在 IE9 上遇到了同样的问题,我找到了解决方案:添加 try{} catch{} 并增加 pollTimer 的时间 给予:
function login() {
var cb = window.open(_url, "windowname1", 'width=800, height=600');
var pollTimer = window.setInterval(function() {
try {
if (cb.document.url.indexOf(REDIRECT) >= 0) {
window.clearInterval(pollTimer);
var url = cb.document.url;
acToken = gup(url, 'access_token');
tokenType = gup(url, 'token_type');
expiresIn = gup(url, 'expires_in');
cb.close();
validateToken(acToken);
}
} catch (e) {
}
}, 500);
}
关于JavaScript 窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10654674/