使用JavaScript检测Windows版本

时间:2010-10-23 22:38:19

标签: javascript

具体来说,我正在尝试检测Windows XP用户,因为它们与我的软件不兼容。

有没有办法以至少70%或更高的准确度进行检测?

3 个答案:

答案 0 :(得分:23)

尝试navigator.appVersion

http://msdn.microsoft.com/en-us/library/ms533080(v=VS.85).aspx
https://developer.mozilla.org/en/DOM/window.navigator.appVersion

我在这里安装了Windows 7,navigator.appVersion在这些浏览器中返回包含“NT 6.1”的字符串:Chrome,Opera,Safari,IE9 beta。

只有Firefox不会在该字符串中返回该信息:(

顺便说一句,WinXP是“NT 5.1”,Vista是“NT 6.0”......

<强> 更新

navigator.userAgent在所有5个浏览器中返回“NT version”字符串。这意味着userAgent是能够告诉Windows版本的属性。

答案 1 :(得分:1)

您似乎可以使用navigator主机对象:

var os = navigator.platform

有关详细信息,请参阅此处: http://www.jguru.com/faq/view.jsp?EID=1100686

此外: http://www.quirksmode.org/js/detect.html

答案 2 :(得分:0)

window.navigator.appVersion.split("NT")[1].split(";")[0].trim()

将返回Windows版本。