如何检测正在使用的设备是移动网站的Android设备?
我需要应用某些CSS属性到Android平台。
谢谢
如何检测正在使用的设备是移动网站的Android设备?
我需要应用某些CSS属性到Android平台。
谢谢
看看这个:http://davidwalsh.name/detect-android
JavaScript:
var ua = navigator.userAgent.toLowerCase();
var isAndroid = ua.indexOf("android") > -1; //&& ua.indexOf("mobile");
if(isAndroid) {
// Do something!
// Redirect to Android-site?
window.location = 'http://android.davidwalsh.name';
}
PHP:
$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
if(stripos($ua,'android') !== false) { // && stripos($ua,'mobile') !== false) {
header('Location: http://android.davidwalsh.name');
exit();
}
编辑:正如一些评论所指出的那样,这种方法在99%的情况下是可行的,但有一些边缘情况没有被覆盖到。如果你需要一个更高级和更可靠的解决方案来处理JS,你应该使用platform.js:https://github.com/bestiejs/platform.js
这个简短的代码怎么样?
var isAndroid = /(android)/i.test(navigator.userAgent);
i
修饰符用于执行不区分大小写的匹配。
该技术取自 Cordova AdMob 测试项目:https://github.com/floatinghotpot/cordova-admob-pro/wiki/00.-How-To-Use-with-PhoneGap-Build
/android/i
- SidOfc我认为Michal的回答是最好的,但我们可以更进一步,根据原始问题动态加载Android CSS:
var isAndroid = /(android)/i.test(navigator.userAgent);
if (isAndroid) {
var css = document.createElement("link");
css.setAttribute("rel", "stylesheet");
css.setAttribute("type", "text/css");
css.setAttribute("href", "/css/android.css");
document.body.appendChild(css);
}
;(function() {
var redirect = false
if (navigator.userAgent.match(/iPhone/i)) {
redirect = true
}
if (navigator.userAgent.match(/iPod/i)) {
redirect = true
}
var isAndroid = /(android)/i.test(navigator.userAgent)
var isMobile = /(mobile)/i.test(navigator.userAgent)
if (isAndroid && isMobile) {
redirect = true
}
if (redirect) {
window.location.replace('jQueryMobileSite')
}
})()
document.documentElement.className += ((/(android)/i.test(navigator.userAgent) ? " android" : " notAndroid");
html.android .mainMenu {
width: 100%;
}
html.notAndroid .mainMenu {
width: 50%;
}
JS版本,也可以捕获iPad:
var is_mobile = /mobile|android/i.test (navigator.userAgent);
var isAndroid = /Android/i.test(navigator.userAgent)
。 - Dave KooMozilla/5.0 (Mobile; Windows Phone 8.1; Android 4.0; ARM; Trident/7.0; Touch; rv:11.0; IEMobile/11.0; NOKIA; Lumia 625; Orange) like iPhone OS 7_0_3 Mac OS X AppleWebKit/537 (KHTML, like Gecko) Mobile Safari/537
- Sam Jason Braddock