我正在使用代码重定向宽度小于699像素的移动设备来访问我们的移动网站。此方法使用JavaScript和cookie,并遵循一些基本逻辑:
skipmobile
设置为1 仅当skipmobile
不是1且您的移动设备列在下方且宽度不足699像素时才重定向。
//{{Full Site Code}} Only run logic if cookies are enabled.
if(navigator.cookieEnabled){
//If the cookie skipmobile is already set do not redirect to mobile.
if (document.location.search.indexOf("skipmobile") >= 0) {
document.cookie = "skipmobile=1";
}
//If the device is one of the types listed below and is under 699 pixels wide, redirect to the mobile site.
else if (((/Android|webOS|iPhone|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) && screen.width < 699)
&& document.cookie.indexOf("skipmobile") == -1)
{
document.location = "'.MOBILE_SITE.$direct.'";
}
}
在移动网站上,我只是有一个类似以下的链接,有人可以点击设置cookie
http://www.example.com?skipmobile=1
此代码适用于我和大多数人,但我们让客户说当他们点击完整的站点链接时,它会将它们发送回移动站点。根据代码,这意味着他们确实启用了cookie,但他们的cookie没有设置。
我需要对这段代码做些什么吗?
更新:所以这个问题有点奇怪。我们的一名员工也遇到了这个问题,所以我们至少要有一个电话进行测试。我们有一个实时网站和一个开发网站。它适用于我们我们去开发站点和重定向,但它不适用于现场......
这有助于任何人得出结论吗?两个站点的代码都是相同的。
答案 0 :(得分:1)
您应该事先删除与您网站相关的所有cookies
,因为 应该清除任何问题。这是一个很棒的功能链接,应该为你做到这一点:
你也可以说你不希望它在标题中缓存一段时间(使用缓存控制var)以确保如果手机存储了任何问题,这些都会被删除