window.open被浏览器拦截
H5下载发票是跳一个后端返回的链接,但直接用window.open有些会被浏览器(Safari)拦截
在axios中进行window.open会被浏览器拦截
法1:但用户自己点击的链接不会,可以创建a标签模拟用户点击;
法2:在axios之前就window.open
1 | xx.addEventListener(‘click‘, function () { |
以上方法其实是打开了两个地址,所以建议大家打开第一个地址的时候给出一个类似‘当前页面正在加载中,请稍后。。’的简单提示页,这样可以避免打开两次真正的目标页面,让用户察觉到页面的重定向。
法3(终极方法,成功实践):
1 | window.location.href='target url' |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 钥零零の博客!
评论