javascript中的操作系统和操作系统版本检测[重复]

Posted

技术标签:

【中文标题】javascript中的操作系统和操作系统版本检测[重复]【英文标题】:os and os version detection in javascript [duplicate] 【发布时间】:2011-07-08 04:11:34 【问题描述】:

可能重复:How to find the operating system version using javascript

我如何检测我的访问者在 javascrtip 中使用了哪个操作系统和操作系统版本。例如 windows vista 或 7 或 Xp 和 linux 。

【问题讨论】:

【参考方案1】:

要检测客户端计算机上的操作系统,您的脚本应该分析 navigator.appVersion 字符串。下面是一个简单的脚本示例,它设置变量 OSName 以反映实际的客户端操作系统。

// This script sets OSName variable as follows:
// "Windows"    for all versions of Windows
// "MacOS"      for all versions of Macintosh OS
// "Linux"      for all versions of Linux
// "UNIX"       for all other UNIX flavors 
// "Unknown OS" indicates failure to detect the OS

var OSName="Unknown OS";
if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows";
if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS";
if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX";
if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux";

document.write('Your OS: '+OSName);

在您的系统上,此脚本产生以下结果: 您的操作系统:Windows

(要获得更详细的操作系统信息,您的脚本应该对navigator.appVersion 字符串执行更复杂的分析,但想法是一样的。)

【讨论】:

【参考方案2】:

navigator.platform 会给你他们当前使用的平台,就像 navigator.userAgent 会给你整个浏览器字符串一样。

【讨论】:

仅适用于 FIrefox,不适用于 chrome【参考方案3】:

navigator.appVersion 在 Firefox/WinXP 上的输出。

5.0 (Windows; en-US)

navigator.userAgent 在 Firefox/WinXP 上的输出。

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8

navigator.platform的输出

Win32

【讨论】:

请举个例子。了解它对我很重要

以上是关于javascript中的操作系统和操作系统版本检测[重复]的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript用户代理字符串检测脚本

javascript浏览器用户代理检测脚本实现

JavaScript 中的浏览器检测? [复制]

JavaScript 中的浏览器检测? [复制]

如何检测 uiWebView 上 javascript 操作的启动?

如何在 Javascript 中获取 PC 中的操作系统版本