2

我正在创建一个下载页面,我只想将使用 MAC Snow Leopard 操作系统的用户重定向到此页面。我可以通过 jquery 专门检测雪豹操作系统用户吗?

非常感谢!

4

4 回答 4

2

通过分析 User-Agent 字符串,您可以(不可靠地)了解正在运行的操作系统版本。

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

该脚本的核心是以下代码:

this.version = this.searchVersion(navigator.userAgent)
        || this.searchVersion(navigator.appVersion)
        || "an unknown version";

请注意,您需要同时考虑“userAgent”和“appVersion”,具体取决于具体的浏览器。

不同的浏览器通常以略有不同的方式报告操作系统。查看这些列表,了解三大 Mac 浏览器是如何做到这一点的——Snow Leopard 浏览器通常在某处包含字符串“10_6_”或“10.6”,以表明它是 Mac OS 10.6.n:

http://www.useragentstring.com/pages/Safari/

http://www.useragentstring.com/pages/Chrome/

http://www.useragentstring.com/pages/Firefox/

总而言之,您可以尝试这样的事情,这绝对没有经过我的严格测试:

var ua = navigator.userAgent ||navigator.appVersion;
if (ua.match(/10[_.]6/)) { // null if not matched
    alert('Snow Leopard');
} else {
    alert('not Snow Leopard');
}

http://jsfiddle.net/8BxUC/2/

于 2012-06-07T18:47:53.263 回答
0

您应该能够从navigator.appVersionnavigator.userAgent

于 2012-06-07T18:48:47.693 回答
0

你只能通过用户代理:

$('#UserAgent').val(navigator.userAgent);

它看起来像这样:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/534.53.11 (KHTML, like Gecko) Version/5.1.3 Safari/534.53.10
于 2012-06-07T18:50:10.493 回答
0

使用 navigator.userAgent 来确定平台,容易受到用户的欺骗或浏览器本身的虚假陈述。在可能的情况下,最好完全避免使用特定于浏览器的代码。

于 2012-06-07T19:10:50.390 回答