移动到普通网站重定向

时间:2012-01-02 00:20:07

标签: javascript mobile redirect

我有一个简历/简历网站,当用户访问我的网站并且屏幕分辨率低于960时,我通过这个JS将他重定向到我的移动网站

    <script type="text/javascript">if (screen.width <= 960) {document.location = mobile.html";}</script>

我的问题是,如果用户想访问普通网站并点击链接,javascript将再次运行,它会将用户重定向回移动网站。解决这个问题的一种方法可能是复制普通网站让我们说index.html和index1.html一个上面的代码和一个没有JS,但我认为这个解决方案是如此的愚蠢。有什么方法可以解决这个问题?在您回答之前请注意我无法访问.htaccess文件。

我的问题是,当用户访问网站宽度低于960的网站时,请访问移动网站,但如果他想查看整个网站,请按链接并重定向到完整网站,无论屏幕宽度如何。

2 个答案:

答案 0 :(得分:5)

这是一个小代码段。当用户从移动设备更改为正常时,请运行以下代码:

var expires = new Date();
expires.setHours(expires.getHours + 24); 

document.cookie = (document.cookie ? document.cookie + ' ;' : '')
     + ' disableMobile=1; expires=' + expires.toGMTString();

然后将重定向条件更改为

   if (screen.width <= 960 && document.cookie.indexOf('disableMobile') < 0) [...]

答案 1 :(得分:3)

有两种想法:

  1. 使用Cookie,以便记住用户留在完整网站上的偏好。在重定向之前创建/设置cookie。
  2. 使用查询参数<a href="index.html?fullsite=true">Full site</a>(或类似名称),您只在mobile.html的链接中设置回正常网站。
  3. 然后在现有的屏幕宽度测试中添加一个条件,以便仅在未设置cookie / query参数时才运行。

    (您可能还想在主索引页面上添加一个额外的链接,让用户选择移动版本。显然,如果你选择了cookie路径,那么应该清除cookie。)