码迷,mamicode.com
首页 > Windows程序 > 详细

window.open()被拦截问题

时间:2017-05-05 14:17:53      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:用户   常用   window   点击   open   网上   链接   解决方案   地址   

    最近做项目的时候遇到一个需求,在商品详情页面中点击购买按钮,之后再新标签页中打开生成的订单页面,所以想用window.open()来实现。但是测试的时候发现打开的链接被浏览器拦截。

    之后,开始在网上查找解决方案,看到最常用的一个是新建一个a标签,模拟点击测试,多次测试后发现并没有用。然后又尝试了几个其他常见的方法,还是都会被拦截。

    然后,发现window.open()拦截是有条件的。一般通过用户的点击事件触发的在新标签页中打开链接,浏览器是不会拦截的,因为这种形式打开新窗口浏览器会认为是用户自己需要的。

    在我的项目中,是需要在ajax异步请求成功后需要在新窗口中打开返回的url地址,使用window.open()会被拦截,因为这种情况下浏览器认为该操作不是用户主动触发的,所以会拦截。

    解决办法:

      ajax请求由异步改为同步。(async:false)   (测试有效)。

window.open()被拦截问题

标签:用户   常用   window   点击   open   网上   链接   解决方案   地址   

原文地址:http://www.cnblogs.com/jjworld/p/6812365.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!