从网上找到一段使用JavaScript判断浏览器以及浏览器版本的比较好的代码,在此记录一下:
1 <script type="text/javascript">
2 var Sys = {};
3 var ua = navigator.userAgent.toLowerCase();
4 var s;
5 (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
6 (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
7 (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
8 (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
9 (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
10
11 //以下进行测试
12 if (Sys.ie) document.write('IE: ' + Sys.ie);
13 if (Sys.firefox) document.write('Firefox: ' + Sys.firefox);
14 if (Sys.chrome) document.write('Chrome: ' + Sys.chrome);
15 if (Sys.opera) document.write('Opera: ' + Sys.opera);
16 if (Sys.safari) document.write('Safari: ' + Sys.safari);
17 </script>
将上述代码封装成一个方法,方法返回Sys对象,Sys对象中封装了浏览器的类型和版本信息,如下:
1 function getBrowserInfo(){
2 var Sys = {};
3 var ua = navigator.userAgent.toLowerCase();
4 var re =/(msie|firefox|chrome|opera|version).*?([\d.]+)/;
5 var m = ua.match(re);
6 Sys.browser = m[1].replace(/version/, "'safari");
7 Sys.ver = m[2];
8 return Sys;
9 }
当需要获取浏览器的类型和版本信息时,就可以使用getBroserInfo方法,如下:
1 <script type="text/javascript">
2 //获取当前的浏览器信息
3 var sys = getBrowserInfo();
4 //sys.browser得到浏览器的类型,sys.ver得到浏览器的版本
5 document.write(sys.browser + "的版本是:" + sys.ver);
6 </script>
完整测试代码如下:
1 <!DOCTYPE HTML>
2 <html>
3 <head>
4 <title>JavaScript获取浏览器类型与版本</title>
5 <script type="text/javascript">
6 var Sys = {};
7 var ua = navigator.userAgent.toLowerCase();
8 var s;
9 (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
10 (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
11 (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
12 (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
13 (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
14
15 //以下进行测试
16 if (Sys.ie) document.write('IE: ' + Sys.ie);
17 if (Sys.firefox) document.write('Firefox: ' + Sys.firefox);
18 if (Sys.chrome) document.write('Chrome: ' + Sys.chrome);
19 if (Sys.opera) document.write('Opera: ' + Sys.opera);
20 if (Sys.safari) document.write('Safari: ' + Sys.safari);
21 </script>
22 <script type="text/javascript">
23 function getBrowserInfo(){
24 var Sys = {};
25 var ua = navigator.userAgent.toLowerCase();
26 var re =/(msie|firefox|chrome|opera|version).*?([\d.]+)/;
27 var m = ua.match(re);
28 Sys.browser = m[1].replace(/version/, "'safari");
29 Sys.ver = m[2];
30 return Sys;
31 }
32 document.write('<hr/>');
33 //获取当前的浏览器信息
34 var sys = getBrowserInfo();
35 //sys.browser得到浏览器的类型,sys.ver得到浏览器的版本
36 document.write(sys.browser + "的版本是:" + sys.ver);
37 </script>
38 </head>
39
40 <body>
41
42 </body>
43 </html>
运行结果:
IE浏览器下测试结果:
google浏览器下测试结果:
火狐浏览器下测试结果: