![](/img/trans.png)
[英]Redirecting to respective page of desktop/mobile version using Javascript
[英]Redirecting a mobile user to a desktop version
我有一个使用设备检测功能的Wordpress网站,它使用以下操作将在移动设备上浏览的用户重定向到特定页面:
<script>
if( /Android|webOS|iPhone|iPod|BlackBerry|IEMobile/i.test(navigator.userAgent) ) {
window.location = "176.32.230.17/domain.co.uk/m";
}
</script>
该代码当前位于domain.co.uk的主页模板上。 刚打开身体标签之后。 检测和重定向效果很好,但是,我需要在该移动页面上提供一个指向网站桌面版本的链接。 所以只是一个简单的链接:
<a href="http://176.32.230.17/domain.co.uk/?ref=desktop">Link back to desktop website</a>
这样做是因为它会将用户引导回domain.co.uk地址,因为检测/重定向代码的位置位于domain.co.uk的主页模板上,因此用户将被重定向回移动版本。 我怎样才能解决这个问题?
您需要某种方式来传达用户已经被重定向一次的事实。 如果您使用的是PHP,则可以使用GET变量进行条件重定向。 如果您仅使用Javascript,则可以使用Cookie。 HTML5也支持某种数据存储,但是我对此并不熟悉。
编辑:实际上,您可以将GET变量附加到地址上,甚至不使用PHP。 只需使用window.location.href
获取地址,然后查看是否仅使用Javascript设置了变量。
EDIT2:注释中放入太多内容,所以让我将其放在此处。 链接应更改为:
<a href="http://176.32.230.17/domain.co.uk/?ref=desktop#redirected">Link back to desktop website</a>
重定向代码可以更改为:
<script>
if( /Android|webOS|iPhone|iPod|BlackBerry|IEMobile/i.test(navigator.userAgent) &&
!window.location.href.contains("#redirected") ) {
window.location = "176.32.230.17/domain.co.uk/m";
}
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.