2

再会

我做了一些研究,发现您可以使用以下 javascript 来检测用户操作系统,无论是 Android、iOS、Windows 等:

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);

现在我想做的是根据他的操作系统将用户重新定位到苹果 Appstore 或谷歌 Play 商店,如下所示:

HTML:

<a href="" id="redirect">Download our App</a>

和相关的 JS

if (OSName="MacOS" ){
$("#redirect").attr("href", "http://www.itunes.com/myapp")
}

elseif (OSName="Linux"){
$("#redirect").attr("href", "http://www.play.google.com/")
}
  (Linux is for Android right? )

这是正确/最好的方法吗/我的代码可以工作吗?

谢谢

4

3 回答 3

5

您的代码可以简化:

var playStoreUrl = "http://www.play.google.com/",
    appStoreUrl  = "http://www.itunes.com/myapp",
    platform     = navigator.platform;

if (/mac/i.test(platform))
    $("#redirect").attr("href", appStoreUrl);
else if (/linux/i.test(platform))
    $("#redirect").attr("href", playStoreUrl);
else
    // Handle the case where the OS is neither MacOS nor Linux
于 2013-02-18T08:26:42.583 回答
3

是的,它会工作..你也可以使用这个库。

检测移动浏览器 JS

于 2013-02-18T07:54:08.333 回答
1
return {
     isMac105: /Mac OS X 10_5/.test(userAgent),
     isMac106: /Mac OS X 10_6/.test(userAgent),
     isMac107: /Mac OS X 10_7/.test(userAgent),
     isMac108: /Mac OS X 10_8/.test(userAgent),
 };

mac的用户代理,例如

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_1) AppleWebKit/536.25 (KHTML, like Gecko) Version/6.0 Safari/536.25

Macintosh; U; Intel Mac OS X 10_5_8; ru) AppleWebKit/533.18.1 (KHTML, like Gecko) Version/5.0.2 Safari/533.18.5
于 2013-02-18T07:51:05.823 回答