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

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

但因为浏览器近来对非用户操做的新开窗口管控愈来愈严格,用window.open打开的窗口都会被拦截,须要用户主动设置不拦截才行java

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

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

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

$.ajax({
	url:'后台地址',
	async: false,
	data:数据,
	method:'post',
	success:function (返回地址) {
		window.open(返回地址);
		}
});
相关文章
相关标签/搜索