• 注册
当前位置:1313e > ajax >正文

ajax让js打开新窗口不会被拦截

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

近日做了一个需求,在后台获取数据后,根据结果新开一个页面,新开页面很简单也就是一个函数和参数的事

但由于浏览器近来对非用户操作的新开窗口管控越来越严格,用window.open打开的窗口都会被拦截,需要用户主动设置不拦截才行

做不要拦截提示,让用户改设置?奈何中国这么多人,除了点点点和拼音打字外什么都不会的实在不少,给了提示也看不懂,懒人和大爷也特多,他就是不改能怎么办?所在公司不是阿里腾讯这种敢叫板用户的公司,还是要靠用户挣钱的,所以只能我当孙子,想办法

先是想到不能用open那就触发a标签,结果jq的trigger和click无效,原生触发click虽然有效但只要a标签加上target="_blank"就会被拦截,然后各种换方法,最后发现不管怎样,只要不是手动点击的,原窗口跳转可以,但打开新窗口就会被拦截

最后搜索得到一个结果:‘ajax要同步打开’,我试了试还真解决了,示例代码:

$.ajax({url:'后台地址',async: false,data:数据,method:'post',success:function (返回地址) {window.open(返回地址);}
});

 

转载于:https://my.oschina.net/u/3470006/blog/1817171

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 162202241@qq.com 举报,一经查实,本站将立刻删除。

最新评论

欢迎您发表评论:

请登录之后再进行评论

登录