检测iPad设备,并选择查看常规网站JavaScript

时间:2014-08-27 21:28:18

标签: javascript

我有一个可以检测到iPad并将其重定向到移动网站的JavaScript。我还有一个链接,允许用户离开移动网站查看完整的网站。但是,当他们点击链接查看完整网站时,JavaScript会再次触发并将其重定向回移动网站。我该如何解决?下面是我的JavaScript代码示例。

if ((navigator.userAgent.indexOf('iPad') != -1)) {
    document.location = "http://www.sample.com/mobilego.aspx";
}

1 个答案:

答案 0 :(得分:0)

使用sessionStoragelocalStorage存储覆盖重定向的标记。

E.g。在移动网站上

if (window.sessionStorage) sessionStorage.setItem("beenOnMobileSite",true)

并在主站点上

if ((navigator.userAgent.indexOf('iPad') != -1
  && !sessionStorage.getItem("beenOnMobileSite")) {
    document.location = "http://www.sample.com/mobilego.aspx";
}

使用localStorage代替sessionStorage来使覆盖持久化。

如果移动网站和主网站位于不同的服务器上,则他们将无法访问相同的存储。对此的一个解决方案是将参数添加到主页面的链接,并在主页面上检查脚本中的参数。如果参数存在,请像以前一样覆盖重定向,但也要设置上面的sessionStoragelocalStorage项目以使其坚持。