经常有人用window.open()的时候被浏览器拦截了 比如 btn.onclick=function(){ function aa (){ window.open("xxx"); } aa ...
一.首先,我们要知道哪些弹窗会被 chrome拦截,哪些弹窗不会被拦截 .非用户触发的window.open方法,是会被拦截的。 .用户触发的window.open方法,不会被拦截。 二.如何,避免被拦截 最简单的方法:让window.open方法被用户触发 ...
2019-11-08 16:00 0 368 推荐指数:
经常有人用window.open()的时候被浏览器拦截了 比如 btn.onclick=function(){ function aa (){ window.open("xxx"); } aa ...
在浏览器的安全机制里,非用户触发的window.open方法是会被拦截的,例如: 上面的window.open是用户click触发的,所以不会被拦截,可以正常打开新窗口。再看下面这个: 用户没有直接触发window.open,而是发出一个ajax请求 ...
window.open虽然在很多时候被广大中小站长用于弹窗广告的展示,所以广受争议,但是在业务需求中还是有很多场景需要用到此功能。然而,大多数浏览器对此都有一定的安全策略进行阻止,为此本文将针对以下浏览器进行测试。 Chrome16、Firefox10、360SE4.2、IE6、IE8 ...
之前一直使用window.open(url),打开新的切换卡加载页面,今天使用opera浏览器测试的时候发现有这么个情况。 最开始以为是window.open()的浏览器兼容性问题,所以尝试了a标签点击,form表单提交,以及window.open()添加“_blank”参数的方式都不 ...
我们知道,window.open()如果不设置样式的话,弹出窗体的时候都是小小的一块在左上角,所以我们使用的时候通常要添加样式,而居中显示是符合现代审美与使用习惯的关键一点。 封装成一个函数,方便以后调用。 "喜欢一个人是藏不住的。" ...
最近在项目中有一个在浏览器中新开一个窗口的需求,如果不需要做任何的判断,只是直接新开窗口的话,用a标签即可。 但是如果需要做一些判断再新开一个窗口的话,就不能使用a标签了。window.open确实可以打开一个新窗口,但会被浏览器当作广告被拦截,需要手动去解除拦截。 在网上搜索 ...
前言:此文章仅是个人工作中遇到问题后的一些记录和总结,可能毫无意义。。 事件回顾: 在开发中,PM要求在一个页面中输入多个链接然后可以一键在新窗口打开,所以就想到用window.open来实现,但是测试的时候发现会被拦截 分析: 关于window.open的用户很多前辈都有写过相关 ...
之前有个需求是输入一些配置,然后点击预览,通过接口保存配置并返回预览页面链接,在新页面中打开链接。后来测试一直说没有新页面打开,我一看,原来是被浏览器拦截了。 原因如下: 浏览器只有在认为click和submit在打开新窗口时(如果是_self则不会有此限制),这些操作是由用户主动触发时 ...