项目中的小问题: window.open 失效不弹窗问题
前言
前端大佬在忙,自己的P0已经清空,闲来无事就想去研究研究
背景及现象
前端调用wps展示数据,在wps中穿透其他业务数据。预期:新开页面展示穿透数据
排查1:F12 调试调用 window.open和top.open,控制台无报错、浏览器无新窗口打开。换window.location.href = url 生效
排查2:百度一堆,大部分是Safari、移动端调用失败的,方面错误; 但 偶然间 发现一篇文章再说,手动点击和Ajax success中调用差异。 前端大佬反馈,问题偶发,有些时候提示页面跳转是否拦截
bingo!控制台测试window.open,果然出现拦截提示,then 关闭拦截,再测试 弹出正常
总结
手工点击事件方法里的 window.open能被认可,不会拦截 AJAX调用后的属于机器代码控制,需要人工判断是否可跳转
搜索用得好,早日成大佬!