什麼一點谷歌搜索止跌回升,從A Beautiful Site:
var isMobile = {
Android: function() {
return navigator.userAgent.match(/Android/i);
},
BlackBerry: function() {
return navigator.userAgent.match(/BlackBerry/i);
},
iOS: function() {
return navigator.userAgent.match(/iPhone|iPad|iPod/i);
},
Opera: function() {
return navigator.userAgent.match(/Opera Mini/i);
},
Windows: function() {
return navigator.userAgent.match(/IEMobile/i);
},
any: function() {
return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
}
};
if(isMobile.any()){
// Mobile!
} else {
// Not mobile
}
我不會說這個功能檢測是方式最好的用戶代理嗅探,這是可怕的實際。但是,如果您正在檢測功能以確定該設備是否被認爲是移動設備,那麼您將面臨一系列全新的問題。
你不能檢查pixel-ratio
,因爲新的臺式電腦很可能是「視網膜」或超高清。您無法檢查device-orientation
,因爲它不再是移動設備所特有的。您無法檢查(如果可以的話)陀螺儀,因爲某些筆記本電腦可能會返回值。
構建可在所有平臺上工作但不會嘗試將它們分開的網站!
您似乎錯過了功能檢測的要點。關鍵是要檢測你關心的功能,而不是移動/桌面。 – Quentin
謝謝你指出,@Quentin。希望這能夠澄清那些正在嘗試做同樣的事情的人。 – moey
相關:http://stackoverflow.com/q/11381673 – moey