js获取用户的操作系统和浏览器版本的方法 摘自:http://blog.163.com/yhwwen@126/blog/static/17046885320136173628548/
今天有个需求,要获取当前用户的操作系统和浏览器版本。也趁这这个契机,记录下来,以便以后用到,代码如下: var getOSAndBrowser = function(){ var os = navigator.platform; var userAgent = navigator.userAgent; var info = ""; var tempArray = ""; if(os.indexOf("Win") > -1){ if(userAgent.indexOf("Windows NT 5.0") > -1){ info += "Win2000"; }else if(userAgent.indexOf("Windows NT 5.1") > -1){
今天有个需求,要获取当前用户的操作系统和浏览器版本。也趁这这个契机,记录下来,以便以后用到,代码如下: var getOSAndBrowser = function(){ var os = navigator.platform; var userAgent = navigator.userAgent; var info = ""; var tempArray = ""; if(os.indexOf("Win") > -1){ if(userAgent.indexOf("Windows NT 5.0") > -1){ info += "Win2000"; }else if(userAgent.indexOf("Windows NT 5.1") > -1){ info += "WinXP"; }else if(userAgent.indexOf("Windows NT 5.2") > -1){ info += "Win2003"; }else if(userAgent.indexOf("Windows NT 6.0") > -1){ info += "WindowsVista"; }else if(userAgent.indexOf("Windows NT 6.1") > -1 || userAgent.indexOf("Windows 7") > -1){ info += "Win7"; }else if(userAgent.indexOf("Windows 8") > -1){ info += "Win8"; }else{ info += "Other"; } }else if(os.indexOf("Mac") > -1){ info += "Mac"; }else if(os.indexOf("X11") > -1){ info += "Unix"; }else if(os.indexOf("Linux") > -1){ info += "Linux"; }else{ info += "Other"; } info += "/"; if(/[Ff]irefox(\/\d+\.\d+)/.test(userAgent)){ tempArray = /([Ff]irefox)\/(\d+\.\d+)/.exec(userAgent); info += tempArray[1] + tempArray[2]; }else if(/MSIE \d+\.\d+/.test(userAgent)){ tempArray = /MS(IE) (\d+\.\d+)/.exec(userAgent); info += tempArray[1] + tempArray[2]; }else if(/[Cc]hrome\/\d+/.test(userAgent)){ tempArray = /([Cc]hrome)\/(\d+)/.exec(userAgent); info += tempArray[1] + tempArray[2]; }else if(/[Vv]ersion\/\d+\.\d+\.\d+(\.\d)* *[Ss]afari/.test(userAgent)){ tempArray = /[Vv]ersion\/(\d+\.\d+\.\d+)(\.\d)* *([Ss]afari)/.exec(userAgent); info += tempArray[3] + tempArray[1]; }else if(/[Oo]pera.+[Vv]ersion\/\d+\.\d+/.test(userAgent)){ tempArray = /([Oo]pera).+[Vv]ersion\/(\d+)\.\d+/.exec(userAgent); info += tempArray[1] + tempArray[2]; }else{ info += "unknown"; } return info; };
代码比较简单,就是一些if..else if...else语句,但用到大量的正则,因为只在win7运行过,不知道其他的操作系统,navigator.userAgent会不会变化,如果大家在不同操作系统中使用,遇到麻烦,可以留言,我会改进
|