解决移动端使用window.open跳转链接时,苹果iOS没有反应的问题

移动端使用window.open跳转链接时安卓可以正常跳转,但是iOS苹果上没有反应,百度了下说是因为苹果的安全机制拦截了,所以不能打开新的标签页,然后就使用了网上的方法:

 var winRef = window.open(" ","_blank");   //先打开一个标签页
 // 在请求数据成功的回调中:
 winRef.location = "新的url";

在iOS上打不开,点击无响应

然后就直接使用window.location.href ,这回苹果可以跳转了,但是安卓上点击没反应了
然后就开始判断是哪个终端

/*
导航
url 
*/
export function navigation(url) {
  var u = navigator.userAgent;
  var isAndroid = u.indexOf("Android") > -1 || u.indexOf("Adr") > -1; //android终端
  var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端

  if (isAndroid) {
    //android终端
    window.open(url);
  } else if (isiOS) {
    //ios终端
    window.location.href = url;
  }
}


这样就安卓和苹果上都能跳转链接了

原文链接https://blog.csdn.net/qq_43729779/article/details/108598139

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容