JS获得浏览器版本和操作系统版本的例子


Posted in Javascript onMay 13, 2014

于是,我们可以写出下面的代码:

<script type="text/javascript">
 var Sys = {};
 var ua = navigator.userAgent.toLowerCase();
 var s;
  (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
  (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
  (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
  (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
  (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
 //以下进行测试
 if (Sys.ie) document.write('IE: ' + Sys.ie); 
 if (Sys.firefox) document.write('Firefox: ' + Sys.firefox);
 if (Sys.chrome) document.write('Chrome: ' + Sys.chrome);
 if (Sys.opera) document.write('Opera: ' + Sys.opera);
 if (Sys.safari) document.write('Safari: ' + Sys.safari);
</script>

其中,采用了 三元运算符 这样的判断表达式来精简代码。判断条件是一条赋值语句,既完成正则表达式的匹配及结果复制,又直接作为条件判断。而随后的版本信息只需从前面的匹配结果中提取即可,这是非常高效的代码。

今后,判断某种浏览器只需用if(Sys.ie)或if(Sys.firefox)等形式,而判断浏览器版本只需用if(Sys.ie == '8.0')或if(Sys.firefox == '3.0')等形式,表达起来还是非常优雅的。

获得操作系统版本:

<script type="text/javascript">
//用于获取系统版本(注意:本方法对Firefox、Chrome无效)
var ua = window.navigator.userAgent;
var osVersion = ua.split(";")[2];
var osV = osVersion.substr(osVersion.length-3,3); 
switch(osV)
{
 case "5.0":
  document.write("Windows2000");
  break;
 case "5.1":
  document.write("WindowsXP");
  break;
 case "5.2":
  document.write("Windows2003");
  break;
 case "6":
  document.write("Windows Vista");
  break;
 case "6.1":
  document.write("Windows 7");
  break;
 default:
 document.write("Others");
}
</script>
Javascript 相关文章推荐
JavaScript 原型与继承说明
Jun 09 Javascript
原生javascript图片自动或手动切换示例附演示源码
Sep 04 Javascript
javaScript如何处理从java后台返回的list
Apr 24 Javascript
JQuery性能优化的几点建议
May 14 Javascript
jQuery实现瀑布流布局
Dec 12 Javascript
javascript实现textarea中tab键的缩排处理方法
Jun 26 Javascript
jquery专业的导航菜单特效代码分享
Aug 29 Javascript
利用jQuery中的ajax分页实现代码
Feb 25 Javascript
jQuery插件artDialog.js使用与关闭方法示例
Oct 09 jQuery
在vue中使用express-mock搭建mock服务的方法
Nov 07 Javascript
vue登录页面cookie的使用及页面跳转代码
Jul 10 Javascript
layui自定义插件citySelect实现省市区三级联动选择
Jul 26 Javascript
当滚动条滚动到页面底部自动加载增加内容的js代码
May 13 #Javascript
js语法学习之判断一个对象是否为数组
May 13 #Javascript
js中定义一个变量并判断其是否为空的方法
May 13 #Javascript
jQuery 计算iframe 窗口大小的方法
May 13 #Javascript
js 调用百度地图api并在地图上进行打点添加标注
May 13 #Javascript
两种不同的方法实现js对checkbox进行全选和反选
May 13 #Javascript
js浏览器本地存储store.js介绍及应用
May 13 #Javascript
You might like
PHP随机字符串生成代码(包括大小写字母)
2013/06/24 PHP
2个Codeigniter文件批量上传控制器写法例子
2014/07/25 PHP
PHP文件操作实例总结
2016/09/27 PHP
jQuery 1.8 Release版本发布了
2012/08/14 Javascript
jQuery实用基础超详细介绍
2013/04/11 Javascript
javascript中的遍历for in 以及with的用法
2014/12/22 Javascript
浅谈JSON.parse()和JSON.stringify()
2015/07/14 Javascript
jQuery获取URL请求参数的方法
2015/07/18 Javascript
jQuery实现弹出窗口弹出div层的实例代码
2017/01/09 Javascript
基于JS实现网页中的选项卡(两种方法)
2017/06/16 Javascript
详解vue-cil和webpack中本地静态图片的路径问题解决方案
2017/09/27 Javascript
基于Vue中点击组件外关闭组件的实现方法
2018/03/06 Javascript
vue 监听屏幕高度的实例
2018/09/05 Javascript
详解react native页面间传递数据的几种方式
2018/11/07 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
新手如何快速理解js异步编程
2019/06/24 Javascript
vue实现百度搜索功能
2020/12/28 Javascript
Python文件操作类操作实例详解
2014/07/11 Python
Python性能优化的20条建议
2014/10/25 Python
python如何让类支持比较运算
2018/03/20 Python
Python subprocess模块常见用法分析
2018/06/12 Python
对python过滤器和lambda函数的用法详解
2019/01/21 Python
Python通用函数实现数组计算的方法
2019/06/13 Python
python获取响应某个字段值的3种实现方法
2020/04/30 Python
Pycharm快捷键配置详细整理
2020/10/13 Python
如何避免常见的6种HTML5错误用法
2017/11/06 HTML / CSS
Staples美国官方网站:办公用品一站式采购
2016/07/28 全球购物
美国玛丽莎收藏奢华时尚商店:Marissa Collections
2016/11/21 全球购物
2014年双拥工作总结
2014/11/21 职场文书
小学二年级数学教学计划
2015/01/20 职场文书
警示教育片观后感
2015/06/17 职场文书
2016元旦晚会主持词
2015/07/01 职场文书
高中议论文(范文2篇)
2019/08/19 职场文书
写一个Python脚本自动爬取Bilibili小视频
2021/04/24 Python
python opencv通过4坐标剪裁图片
2021/06/05 Python
Redis集群新增、删除节点以及动态增加内存的方法
2021/09/04 Redis