查看完整的网站,而不是iPhone上的移动版本

Rya*_*Rya 5 javascript iphone redirect mobile-website

我有一个脚本,可以检测您是否是iPhone用户,并重定向到更友好的iPhone页面.

<script  type="text/javascript">
    if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) 
    {
        location.replace("http://domain.com/iphone/");
    }
</script> 
Run Code Online (Sandbox Code Playgroud)

这很好但有一个问题.通常,为用户提供查看完整网页的能力.但是,如果我链接到根,显然重定向将发送到移动版本!

关于如何点击链接的任何想法/iphone/,他们可以去/并留在那里.

Sur*_*ams 8

当用户到达时,确定他们的浏览器类型 - 移动或完整 - 并设置具有此值的cookie.使用此cookie值来确定要显示的站点版本.如您所述,为移动用户提供"完整"网站的链接,但如果他们点击它,请运行快速脚本将cookie更新为"完整"值,然后将其重定向到完整网站.他们的cookie现已设置为完整网站,因此他们不会被退回到移动网站.

现在,如果cookie存在问题,您可以使用类似PHP的东西来设置会话值以维持会话的完整/移动状态,但这可能超出了原始问题的范围.


rob*_*sta 0

查询字符串是要走的路(正如其他人上面所说的那样)。看看 Facebook,如果您点击移动网站上的“完整网站”链接,它会重定向到 www.facebook.com/login.php?m2w - m2w 可能是 MobileToWeb,这将阻止网站将用户重定向到移动网站。