window.open()打开的新窗口被拦截的原因分析和解决方案

摘要:
因为浏览器认为这可能是一个广告。

1、原因:

浏览器检测到非用户操作产生的新弹出窗口,则会对其进行阻止。因为浏览器认为这可能是一个广告。
window.open()放在ajax的回调函数中执行会导致被拦截

2、解决方案:
先打开一个页面,在ajax回调函数中把当前页重定向到目标页面

// 打开一个页面
var newWin = window.open('about:blank');

// 建议给一个提示信息
newWin.document.body.innerHTML = '加载中...';

ajax().done(function() {
    // 重定向
    newWin.location.href = 'url';
});

免责声明:文章转载自《window.open()打开的新窗口被拦截的原因分析和解决方案》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇最佳实践之有限状态机PySide教程:一个简单的点击按钮示例 狼人:下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Jquery面试题整合

一、Jquery测试题 下面哪种不是jquery的选择器?(单选) A、基本选择器 B、后代选择器 C、类选择器 D、进一步选择器 考点:jquery的选择器 (C) 当DOM加载完成后要执行的函数,下面哪个是正确的?(单选) jQuery(expression, [context]) B、jQuery(html,[ownerDocument]) C、jQ...

CAS实现单点登录SSO执行原理及部署

一、不落俗套的开始 1、背景介绍 单点登录:Single Sign On,简称SSO,SSO使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 CAS框架:CAS(Central Authentication Service)是实现SSO单点登录的框架。 2、盗一张学习CAS绝大多都看过的图以及执行部分分析 注:已分不清原创,此...

[原创]ASP.NET中Response.Redirect()方法深度剖析[转]

本文中,我们将借助http分析工具Fiddler,来对Response.Redirect()方法的整个流程进行剖析      http://www.cnblogs.com/ybwang/archive/2010/07/20/1781800.html 首先在Visual Studio中新建一个网站,在Default页面的Page_Load事件中写下Resp...

jQuery boxy弹出层对话框插件中文演示及讲解

一、前言jQuery 下的boxy可以说是一个非常实用的插件,尤其在SNS社区型的大型网站上经常见到风格类似的效果,例如开心网,人人网,facebook网站。这个提示对话框插件应用非常广泛,吃透这个jQuery插件,在灵活运用Ajax技术的话,会使网站无论技术还是体验都会有很大的提升的。具体来讲此jQuery插件包括:提示、确认,拖拉、改变大小、Ajax...

操作系统正则符号说明

1.系统特殊符号回顾   01.基础符号系列     001.美元符号  $       作用:       1.用于取出变量中的内容               2.用于取出指定列的信息(awk)              3.表示用户命令提示符               4.表示一行的结尾       在vim 中利用$符号可将光标跳转到当前行行尾...

爬虫-ajax请求遇到Unicode编码问题

2018-08--4爬取金色财经网页 网址:https://www.jinse.com/search/EOS 第一步:我观察了网页;发现了网页是一个发送ajax请求的网页,发现如下: 然后 我就先爬取第一次请求出来的信息,剩下的请求可以经过比较每次请求的参数的变化来做比较,从而发现规律。 第二步:我上代码,用requests 请求网页第一次发送ajax请...