Angular2项目中浏览器拦截弹出窗口的解决方法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_20881087/article/details/76019978

Angular2项目中浏览器拦截弹出窗口的解决方法

为什么把项目是Angular2的放到了前边?
因为正常也页面网上已经很多解决方案。请自行百度或Google。

现象:当window.open为用户触发事件内部或者加载时,不会被拦截,一旦将弹出代码移动到ajax或者一段异步代码内部,马上就被拦截了。

原因:这个属于浏览器设置,当浏览器检测到非用户操作产生的新弹出窗口,则会对其进行阻止。因为浏览器认为这不是一个用户希望看到的页面。

方案:

  1. 在异步调用之前,即service的then函数之前,声明变量。

let editorWindow = window.open();

  1. 在then函数里修改属性值

editorWindow.location.href = "http://www.baidu.com"

两句话,很简单。

附一个一般的处理方法:
《window.open浏览器弹出新窗口被拦截—原因分析和解决方案》
http://blog.csdn.net/u011159417/article/details/53692536

感谢您看到了这里,这里是结尾。如果对您有帮助,我深感欣慰。自己给自己做广告,不犯法吧?欢迎关注WeChat公众号

**微信公众号: 耐撕程序员

有资源

有想法

有技术贴

随手扫一扫

不吃亏不上当

大家一起天天向上

欢迎扫码关注相互交流**

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_20881087/article/details/76019978