检测重定向并相应显示网站

时间:2015-04-01 03:32:45

标签: javascript redirect mobile

我有一个主网站,必要时会重定向到移动网站。移动网站看起来完全不同,并存储在子目录中。当移动用户选择查看主(完整)网站时,我想:

  1. 重定向到完整网站

  2. 让完整网站检测到重定向(因此它将显示为完整网站)

  3. 如果需要,可以切换回移动版本。

  4. 实现所有这些目标的最有效方法是什么?

    这是我从主要版本重定向到移动版本的方式:

    if (screen.width < 1280) {
        window.location = "http://mainSite.com/mobile/home.html";
    }
    

    谢谢!

1 个答案:

答案 0 :(得分:0)

有几种方法可以做到这一点:

1)您可以在URL中传递查询参数,让消费页面知道您的意图。

//m=0 means MobileVersion=No
window.location = "http://mainSite.com/home.html?m=0";

优点:容易做到

缺点:如果每个页面都执行此检查,则必须在每个页面上继续传递此参数。雅虎在他们的主页上做了这个,但当我点击一个子页面时,我再次获得移动版本,因为他们没有继续传递URL参数。

2)使用cookie存储用户的网站版本偏好。然后在代码中再次检查它。

设置cookie:

document.cookie = 'prefmobile=0; expires=Thu, 1 Apr 2015 23:59:59 UTC; path=/'

PROS:坚持页面调用,不会弄乱URL参数。

缺点:如果用户的cookie被禁用......

然后总会有响应式设计强制移动,无论你是否愿意。 ;)

或者只是有一个按钮,用户可以根据需要切换到不同的版本。也许在顶部显示一个非侵入性的消息div,表示&#34;可用的移动版本 - 点击这里!&#34;如果屏幕宽度< 1280。

希望这有帮助!