js 根据 useragent 判断访问网页的 设备 和 浏览器 分类: 浏览器检测 浏览器兼容 判断设备 判断浏览器 2015-01-28 11:23 266人阅读 评论(0) 收藏

在跨平台,各种浏览器,移动设备兼容的时候,经常要根据设备、浏览器做特定调整,

所以判断设备和浏览器的工作,经常会用到,这里做一下总结

判断设备,区分android,iphone,ipad和其它


android返回1,iphone返回2,ipad返回3,其它返回0


function get_device_info(){
	var ua = navigator.userAgent;
	if(ua.match('Android')){
		return 1;
	}else if(ua.match('iPhone') || ua.match('iPod')){
		return 2;
	}else if(ua.match('iPad')){
		return 3;
	}else{
		return 0;
	}
}



判断是不是特定类型的浏览器,比如新浪weibo客户端内置浏览器,qq客户端内置浏览器(而非qq浏览器),微信内置浏览器(并且区分版本是否大于等于6.0.2)


(特定类型浏览器可能会存在,无法下载,无法跳转和自己的客户端app的特定协议等等,所以需要区分)


(由于微信在6.0.2的时候做了新的策略,使得微信的分享功能在新版本变得不一样,为了兼容新旧版本,这里做了区分操作)


新浪weibo客户端返回1,qq客户端返回2,微信小于6.0.2版本返回3,微信大于等于6.0.2版本返回4,其它返回0


function get_broswer_info(){
	var ua = navigator.userAgent.toLowerCase();
	if(ua.match(/weibo/i) == "weibo"){
		return 1;
	}else if(ua.indexOf('qq/')!= -1){
		return 2;
	}else if(ua.match(/MicroMessenger/i)=="micromessenger"){
		var v_weixin = ua.split('micromessenger')[1];
		v_weixin = v_weixin.substring(1,6);
		v_weixin = v_weixin.split(' ')[0];
		if(v_weixin.split('.').length == 2){
			v_weixin = v_weixin + '.0';
		}
		if(v_weixin < '6.0.2'){
			return 3;
		}else{
			return 4;
		}
	}else{
		return 0;
	}
}



版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2015-01-28 11:23  snow_finland  阅读(285)  评论(0编辑  收藏  举报