js新开窗口被chrome拦截,怎么破?
window.open新开一个窗口,在chrome中会被拦截。这个我在亚马逊一次充值时,也遇到过。
这种情形,在异步处理中比较常见。
stackoverflow上给出一个解决办法,就是:
// 异步处理前
var tab = window.open('about:blank');
//异步处理后
$.post(action,data).done(function(res){
if(res.state==='success'){
tab.location = res.result.url;
}
});
但是我有一个需求,就是我需要在异步处理成功后,才进行新开页面,失败了,就不新开页面了。
以上的代码则无论成功与否,异步处理前,就已经新开窗口了。
如何破?
jquery web前端开发 web HTML JavaScript
倪酱昂帕帕斯
10 years, 2 months ago