当前位置: 首页 > news >正文

Js获取操作系统版本 获得浏览器版本

//利用原生Js获取操作系统版本
function getOS() {
var sUserAgent = navigator.userAgent;
var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows");
var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") || (navigator.platform == "Macintosh") || (navigator.platform == "MacIntel");
if (isMac) return "Mac";
var isUnix = (navigator.platform == "X11") && !isWin && !isMac;
if (isUnix) return "Unix";
var isLinux = (String(navigator.platform).indexOf("Linux") > -1);
if (isLinux) return "Linux";
if (isWin) {
var isWin2K = sUserAgent.indexOf("Windows NT 5.0") > -1 || sUserAgent.indexOf("Windows 2000") > -1;
if (isWin2K) return "Win2000";
var isWinXP = sUserAgent.indexOf("Windows NT 5.1") > -1 || sUserAgent.indexOf("Windows XP") > -1;
if (isWinXP) return "WinXP";
var isWin2003 = sUserAgent.indexOf("Windows NT 5.2") > -1 || sUserAgent.indexOf("Windows 2003") > -1;
if (isWin2003) return "Win2003";
var isWinVista= sUserAgent.indexOf("Windows NT 6.0") > -1 || sUserAgent.indexOf("Windows Vista") > -1;
if (isWinVista) return "WinVista";
var isWin7 = sUserAgent.indexOf("Windows NT 6.1") > -1 || sUserAgent.indexOf("Windows 7") > -1;
if (isWin7) return "Win7";
var isWin10 = sUserAgent.indexOf("Windows NT 10") > -1 || sUserAgent.indexOf("Windows 10") > -1;
if (isWin10) return "Win10";
}
return "other";
}


document.write("您的操作系统是:"+getOS());
console.log("您的操作系统是:"+getOS())

/****获得客户端ID****/
function ClientID (name) {
var cookies = document.cookie.split(";");
var value = "";
for (var i = 0; i < cookies.length; i++) {
var temp = cookies[i].split("=");
var tempValue = temp[0].replace(/(^\s*)|(\s*$)/g, "");
if (tempValue == name) {
value = unescape(temp[1]);
break;
}
}
return value;
}

/**获得屏幕宽度**/
function ScreenWidth () {
return window.screen.width;
};
/***获得屏幕高度**/
function ScreenHeight () {
return window.screen.height;
};
/**获得浏览器***/
function Browse () {
var browser = {};
var userAgent = navigator.userAgent.toLowerCase();
var s;
(s = userAgent.match(/msie ([\d.]+)/)) ? browser.ie = s[1] : (s = userAgent.match(/firefox\/([\d.]+)/)) ? browser.firefox = s[1] : (s = userAgent.match(/chrome\/([\d.]+)/)) ? browser.chrome = s[1] : (s = userAgent.match(/opera.([\d.]+)/)) ? browser.opera = s[1] : (s = userAgent.match(/version\/([\d.]+).*safari/)) ? browser.safari = s[1] : 0;
var version = "";
if (browser.ie) {
version = 'IE ' + browser.ie;
}
else {
if (browser.firefox) {
version = 'firefox ' + browser.firefox;
}
else {
if (browser.chrome) {
version = 'chrome ' + browser.chrome;
}
else {
if (browser.opera) {
version = 'opera ' + browser.opera;
}
else {
if (browser.safari) {
version = 'safari ' + browser.safari;
}
else {
version = '未知浏览器';
}
}
}
}
}
return version;
}

console.log("您的浏览器版本是:"+Browse())

转载于:https://www.cnblogs.com/shuihanxiao/p/10075681.html

相关文章:

  • [USACO12MAR]摩天大楼里的奶牛Cows in a Skyscraper
  • Alpha阶段个人总结
  • BZOJ5091: [Lydsy1711月赛]摘苹果【期望DP】
  • RDIFramework.NET V3.3 Web版新增报表管理功能模块-重量级实用功能
  • /etc/skel 目录作用
  • [逆向工程] 二进制拆弹Binary Bombs 快乐拆弹 详解
  • 软工 · BETA 版冲刺前准备(团队)
  • [源码和文档分享]基于C语言的PL0编译器
  • 图-连通性-有向图的强连通分量
  • 第四次作业
  • 简单的课程管理系统
  • 钉钉:自定义机器人
  • CF161D Distance in Tree
  • python1210作业
  • 7 练习1 -作业讲解
  • (十五)java多线程之并发集合ArrayBlockingQueue
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • angular2 简述
  • css布局,左右固定中间自适应实现
  • iOS 系统授权开发
  • js数组之filter
  • Linux Process Manage
  • mockjs让前端开发独立于后端
  • QQ浏览器x5内核的兼容性问题
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • vue 配置sass、scss全局变量
  • windows下mongoDB的环境配置
  • 记一次用 NodeJs 实现模拟登录的思路
  • 力扣(LeetCode)21
  • 如何在GitHub上创建个人博客
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 说说动画卡顿的解决方案
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 为视图添加丝滑的水波纹
  • 原生 js 实现移动端 Touch 滑动反弹
  • scrapy中间件源码分析及常用中间件大全
  • #QT(串口助手-界面)
  • (Java实习生)每日10道面试题打卡——JavaWeb篇
  • (二)PySpark3:SparkSQL编程
  • (南京观海微电子)——I3C协议介绍
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (三)Honghu Cloud云架构一定时调度平台
  • (转)linux 命令大全
  • (转)Scala的“=”符号简介
  • (转)程序员技术练级攻略
  • (转)创业的注意事项
  • ... fatal error LINK1120:1个无法解析的外部命令 的解决办法
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .apk 成为历史!
  • .NET 3.0 Framework已经被添加到WindowUpdate
  • .Net Web窗口页属性
  • .NET 药厂业务系统 CPU爆高分析
  • .Net 中Partitioner static与dynamic的性能对比
  • .NET 中什么样的类是可使用 await 异步等待的?