js判断手机访问还是电脑访问并跳到对应手机电脑网站

 做手机网站的时候,一般都会用到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错误。

扫一扫手机访问