将桌面用户重定向到另一个页面,将移动用户重定向到主页面

时间:2016-11-28 12:42:56

标签: javascript html ios redirect

我对此代码有疑问。我想将我的桌面用户重定向到block.php页面,不要让他们进入。

我测试了很多代码而其中没有代码适用于我。

目前,我发现这个代码。它完美无缺......但是存在一个小问题。

当我用移动设备(ios设备)检查我的网站时..它会重新加载

这是代码:

<script>

if (navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPad/i) || navigator.userAgent.match(/iPod/i)) { 
    window.location.assign("http://example.com"); 
} else { 
    window.location.assign("http://example.com/block.php"); 
} 

</script>

问题是什么?

1 个答案:

答案 0 :(得分:0)

假设此脚本在http://example.com上运行,则调用if块内的window.location.assign会重新加载页面。在我看来,只有当用户不在移动设备上时才想调用window.location.assign('http://example.com/block.php')。

您可以尝试这样的事情:

function checkIsMobile () {
  if(navigator.userAgent.match(/iPhone/i)){
    return true;
    } else if (navigator.userAgent.match(/iPad/i)){
      return true;
    } else if (navigator.userAgent.match(/iPod/i)){
      return true;
    } else {
      return false;
    }

  }

if (!checkIsMobile()) { 
    window.location.assign("http://example.com/block.php"); 
}