内容:
怎么来判断是手机浏览还是电脑浏览呢?
随着手机端速度越来越快,应用也越来越多,但是网站来说手机浏览和电脑浏览还是有区别的。
从网上查找信息,大致有三种方法:
1.用IP的方法,这个我还没有试过,说是通过特定的移动,联通 网关可以实现这一点,但是现在的WLAN这么广泛,用IP这个方法可以吗,我觉得可以商榷。还得要实际判断下。
2. <!--true is the mobile navigation false is the computer navigation-->
<script language="javascript" type="text/javascript">
function check() {
var userAgentInfo=navigator.userAgent;
var Agents =new Array("Android","iPhone","SymbianOS","Windows Phone","iPad","iPod");
var flag=false;
for(var v=0;v<Agents.length;v++) {
if(userAgentInfo.indexOf(Agents[v])>0) {
flag=true;
break;
}
}
return flag;
}
</script>
<script language="javascript" type="text/javascript">
var f = check();
if(f==true)
window.location.href="m/index.aspx";
//else
// window.location.href = "jb52.jsp";
</script>
但是这种方法,只能通过手机访问,电脑端的手机模拟器却不能用,这种东西是不能两全的。现在的WLAN这么广泛,那我们调试时,只好通过实际的手机来访问了。
还有一个事,现在出现了PDA,它们是界于电脑和手机的一个中屏显示,如果按上面的来写,平板,Android,windows phone 就只好让他们按手机分类来了。
3. <script type="text/javascript">
document.write('你的浏览器标识:',navigator.userAgent,'<br />');
if (navigator.userAgent.match(/^Mozilla/))
document.write('电脑浏览器');
else document.write('其它客户端');
</script>
利用Mozilla来判断,不免有些危险,我的手机UC浏览器,用这段代码来检验,结果也出现了Mozilla,这说明,上面这段代码对UC来说有问题。
目前,我觉得第2种方法,还是可行的。