[英]redirect a mobile site only once
Hy,我只想知道粘贴到我网站的“ index.html”上的代码,以便我可以询问Mobiles用户是否要重定向到移动版本或转到台式机版本,但是我没有找到解决方法我发现的代码始终重定向,没有机会转到移动设备上的桌面版本
我无法发布找到的代码,但问题说明了一切
如果这不可能,那么我只想知道一个仅将移动用户重定向到“ ONCE”的代码,谢谢
我没有这方面的专业经验...只是一个初学者
您可以使用Cookies。 例如,当用户选择“桌面版本”时,设置一个Cookie,当用户回来时检查它是否存在。
如何在此处在PHP中设置Cookie( http://www.w3schools.com/php/php_cookies.asp )
按照http://www.ezmobilewebsitetools.com/howto-redirect.html上的说明进行操作:
将以下代码粘贴到index.html的<head>
部分中
<script>
if ((document.location.hostname.match(/\.mobi$/) || screen.width < 699)
&& (document.cookie.indexOf("skipmobile") == -1 || getCookie("skipmobile") == -1)
{
document.location = "mobile/"; //change this to location of your mobile site
} else if (document.location.search.indexOf("skipmobile") >= 0) {
document.cookie = "skipmobile=1";
}
//getCookie function from http://www.w3schools.com/js/js_cookies.asp
function getCookie(c_name) {
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++) {
x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
x=x.replace(/^\s+|\s+$/g,"");
if (x==c_name) {
return unescape(y);
}
}
}
</script>
这将检测用户是否在屏幕宽度小于699像素的设备上,或者用户是否已进入网站的.mobi域(如果有)。 要允许用户返回桌面站点,请在您的移动页面上的某个位置创建链接
<a href="http://www.MyWebsite.com/?skipmobile=1">
这将创建一个cookie,通知该网站要保留在该用户的桌面网站上。 基于相同的逻辑,我相信在桌面站点上放置以下链接将更改此cookie,以允许用户返回到移动站点。
<a href="http://www.MyWebsite.com/?skipmobile=-1">
请注意,我对Cookie不太了解,也没有对此进行测试。 如果有更多知识的人可以验证或纠正第二个链接,我将不胜感激,并且我相信gs2rom也将如此。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.