当前位置:首页 > 短网址资讯

ajax请求成功后新开窗口window.open()被拦截解决方法

www.ft12.com9年前 (2017-07-29)短网址资讯1782
ajax 异步请求成功后需要新开窗口打开 url,使用的是 window.open() 方法,但是很可惜被浏览器给拦截了,怎么解决这个问题呢
 

问题:

前面开发项目时碰到一个问题,ajax 异步请求成功后需要新开窗口打开 url,使用的是 window.open() 方法,但是很可惜被浏览器给拦截了,怎么解决这个问题呢?
分析:

浏览器之所以拦截新开窗口是因为该操作并不是用户主动触发的,所以它认为这是不安全的就拦截了(不过如果是 _self 的话就不会有这个限制),即使 ajax 回调函数中模拟执行 click 或者 submit 等用户行为(trigger('click')),浏览器也会认为不是由用户主动触发的,因此不能被安全执行,所以被拦截。
解决方法:

1、异步改为同步,即:async:false

2、将新开窗口指向为一个对象,然后修改对象的 url,比如:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$('.task').bind('click',function(){
var w = window.open();
$.ajax({
type: 'POST',
url: '/surveyTask',
dataType: 'json',
error: function(){
w.close();
},
success: function(res){
w.location = res.url;
}
});
});

最后需要说明的是:网上的动态添加 form 新开窗口的方法,并不适合 ajax 请求,至少博主测试了下仍然被浏览器所拦截。

扫描二维码推送至手机访问。

版权声明:本文由短链接发布,如需转载请注明出处。

本文链接:https://www.ft12.com/article_357.html

分享给朋友:

相关文章

使用PHP和Node.js连接dubbo短网址服务

使用PHP和Node.js连接dubbo短网址服务

DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。不巧的…

SEO七大常见误区知多少

SEO七大常见误区知多少

不管是培训机构,还是一些SEO教程,甚至是各种SEO网站上所充斥着的很多SEO知识点都存在着盲区。而这个所谓的盲区对于多数的SEO从业新人来说影响巨大,甚至影响着自己手上实战排名优化的站点。结合多个SEO朋友所向我提出的各种SEO问题,我整…

从产品、市场、投资等,深入了解与分析共享充电宝

从产品、市场、投资等,深入了解与分析共享充电宝

从4月开始,继共享单车之后,共享充电宝突然为科技创投圈所青睐。共享充电宝前景如何?本文作者从产品、市场、投资等多个维度对此进行了分析,共享充电宝的未来似乎并不那么扑朔迷离。忽如一夜春风来,千树万树梨花开。今年春天,共享充电宝火了。3月31日…

一条徐沪生比papi酱更有价值,短网址真的比直播更适合内容创业者吗?

一条徐沪生比papi酱更有价值,短网址真的比直播更适合内容创业者吗?

[ ft12短网址导读 ] 与papi酱的过气构成鲜明对比的是,短视频职业却越来越火,被称为直播之后的又一个内容创业风口,新老互联网巨头都争着往里面砸钱。用户为什么俄然对短视频产生了如此激烈的需求?真实能够依靠的盈利模式又是什么?…

如何利用QQ群,一个月裂变引流成千人大群

如何利用QQ群,一个月裂变引流成千人大群

工欲善其事必先利其器。进入网络项目圈子里的人大概都知道,流量为王,手上掌握了流量或者掌握了流量的技巧和流量入口,那么很多项目就直接成功了50%。圈子无非就是流量、项目点子、执行力、以及运营。流量就是基础,无论做普通民宅还是豪华别墅,都需要一…

短网址的正确使用方式

短网址毋庸置疑是一个伟大的互联网产物,什么行业都能用的到。今天去莱茵培训,一路上都是靠着短链接和二维码指引过去的,真的是太方便了。首先,高铁票上的短链接指引着我去了上海火车站,很快,从安亭到上海火车站只花了不到15分钟,简直不可思议,安亭人…

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。