做手机网站的时候,一般都会用到JS代码来判断当前访问端是否为移动端,然后再跳转到相应的首页上面去,代码如下:
<script>
var userAgentInfo = navigator.userAgent;
var Agents = new Array("Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod");
var flag = false;
var v=0
for ( v = 0; v < Agents.length; v++)
{
if (userAgentInfo.indexOf(Agents[v]) > 0)
{
flag = true; break;
}
}
if(flag){
window.location='http://m.dxpang.com';
}
</script>
这段代码用在PC端网站的首页是没问题的,但如果是其它页面呢?如果我想除了网站首页,其它的列表页也好,封面页也好,内容页也好,都能“智能”地判断是否手机端访问,然后跳转到相应的手机页面去,怎么办?
现在拿帝国CMS做的手机网站来做例子。我们先看看下面这段代码:
<script>
var userAgentInfo = navigator.userAgent;
var Agents = new Array("Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod");
var flag = false;
var v=0
for ( v = 0; v < Agents.length; v++)
{
if (userAgentInfo.indexOf(Agents[v]) > 0)
{
flag = true; break;
}
}
if(flag){
window.location='http://m.dxpang.com/e/public/ClassUrl/?classid=[!--self.classid--]';
}
</script>
看出不同之处了吗?没错,不同之处就在于window.location='http://m.dxpang.com/e/public/ClassUrl/?classid=[!--self.classid--]';
这一段代码,这段代码是什么意思呢?
/e/public/ClassUrl/?classid=[!--self.classid--]
用这个就可以直接获取当前栏目地址,列表页和封面页通用,这样就能达到我们的目的了!
那么内容页怎么办呢?那说法简单了,[!--titleurl--]直接用这个就行了。
PS:用这个方法的前提是你得先把二级域名的跳转规则写好,不然总算能成功跳转,但也有可能会出现404错误。