您的位置:首页 > Web前端 > JavaScript

JavaScript学习总结(十八)——JavaScript获取浏览器类型与版本

2017-09-05 15:37 661 查看
从网上找到一段使用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浏览器下测试结果:

  

火狐浏览器下测试结果:

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: