将移动用户重定向到桌面版本
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>
此代码目前位于主页模板的域名。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.的主页模板上。在英国,用户会被重定向到手机版本。我该如何解决这个问题?
您需要某种方式来传达用户已经被重定向过一次的事实。如果使用PHP,可以使用GET变量进行条件重定向。如果只使用Javascript,可以使用cookie。HTML5也支持某种类型的数据存储,但我不熟悉。
编辑:实际上,你可以在地址上添加一个GET变量,甚至不使用PHP。只需使用window.location.href
获取地址,并查看变量是否仅使用Javascript设置。
<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>
相关文章:
- 从桌面读取python文件时高亮显示代码
- JS编译器/包管理器,用于版本控制
- jQuery-2.1.1.min.js或最新版本jQuery-2.13.min.js不会't支持'@
- Chrome加载旧版本的Javascript文件
- 如何使用js将SNAPSHOT内部版本号转换为3位数的整数
- 使用图像数组列表的simplegallary.js显示适合桌面屏幕的图像
- 为什么jQuery 1.8不能在IE8和InternetExplorer9中使用?(截至2012年9月的IE9最新版本)
- 如何设置jsfiddle's的javascript版本
- 同一HTML页面中的两个不同版本的JQuery
- YouTube作为弹出窗口在桌面版本上播放,但不在移动设备上播放
- 有没有一种方法可以获得three.js的最小/lite版本
- 安卓版本的代码不像桌面互联网浏览器那样工作
- 仅在桌面版本中加载图像
- 砌体在移动浏览器(chrome)上不起作用,并且仅在Chrome桌面版本上有效,如果我重新加载(ctrl + f5)页面
- 如何在网页中添加两个CSS文件,一个用于Safari浏览器,一个用于iPad桌面版本
- 使用Mobile访问时加载移动版本,否则加载桌面版本
- 将普通桌面菜单转换为选择选项菜单(用于移动版本)
- 地图贴图在桌面版本上不能加载,尽管标记是正确放置的
- 将移动用户重定向到桌面版本
- 仅在桌面版本的站点上加载javascript的最佳方法