我在互聯網上到處搜索如何檢測操作系統及其版本。我已經發現如何做到這一點的Windows,(見下面的代碼),現在我希望它也適用於Mac。如何檢測JavaScript中的Mac OS X版本
的Windows代碼檢測(完美的作品!):
// OS detection
var _os_ = (function(){
var userAgent = navigator.userAgent.toLowerCase();
return {
isWin2K: /windows nt 5.0/.test(userAgent),
isXP: /windows nt 5.1/.test(userAgent),
isVista: /windows nt 6.0/.test(userAgent),
isWin7: /windows nt 6.1/.test(userAgent),
};
}());
// get OS shorthand names
var OS;
if(_os_.isWin2K){
OS = "Windows 2000";
}
if(_os_.isXP){
OS = "Windows XP";
}
if(_os_.isVista){
OS = "Windows Vista";
}
if(_os_.isWin7){
OS = "Windows 7";
}
alert(OS);
所以我不知道是否有可能做同樣的事情在Mac OS X一樣,
...
return {
isMac10.5: /mac osx 10.5/.test(userAgent),
isMac10.6: /mac osx 10.6/.test(userAgent),
isMac10.7: /mac osx 10.7/.test(userAgent),
isMac10.8: /mac osx 10.8/.test(userAgent),
};
....
if(_os_.isMac10.5){
OS = "Mac OS X Leopard";
}
etc., etc...
任何想法?任何幫助將非常感激!
'的Windows代碼檢測(完美的作品!)之間'或許在它們的缺省配置某些瀏覽器。用戶代理字符串沒有標準,用戶代理可以報告他們想要的任何內容,這是不可靠的,當然也不是「完美」的。 – RobG