Dan*_*yan 61 javascript browser android android-api-levels
我正在构建一个Web应用程序,并希望在3.0版本的Android设备上禁用转换效果.
反正有没有在浏览器中通过Javascript获取Android版本号?如果是这样的话?
Goh*_*ran 83
使用以下代码获取Android的2位数版本
var ua = navigator.userAgent;
if( ua.indexOf("Android") >= 0 )
{
var androidversion = parseFloat(ua.slice(ua.indexOf("Android")+8));
if (androidversion < 2.3)
{
// do whatever
}
}
Run Code Online (Sandbox Code Playgroud)
例如
Mozilla/5.0(Linux; U; Android 2.2.1; fr-ch; A43 Build/FROYO)AppleWebKit/533.1(KHTML,类似Gecko)版本/ 4.0 Mobile Safari/533.1
将返回Android版本= 2.2
nei*_*ker 82
function getAndroidVersion(ua) {
ua = (ua || navigator.userAgent).toLowerCase();
var match = ua.match(/android\s([0-9\.]*)/i);
return match ? match[1] : undefined;
};
getAndroidVersion(); //"4.2.1"
parseInt(getAndroidVersion(), 10); //4
parseFloat(getAndroidVersion()); //4.2
Run Code Online (Sandbox Code Playgroud)
您可以查看用户代理字符串 - window.navigator.userAgent
此处描述:https://developer.mozilla.org/en/DOM/window.navigator.userAgent
如果您真正想要检测的是您是否拥有支持特定功能的浏览器版本,那么使用功能检测而不是浏览器版本检测几乎总是更好.modernizr是用于特征检测的巨大代码基础,您可以按原样使用,也可以从中借用一个特定的部分,或者只是了解一般技术的工作原理.
当我谷歌时,我看到Android的用户代理字符串如下:
Mozilla/5.0 (Linux; U; Android 2.2.1; fr-ch; A43 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
Run Code Online (Sandbox Code Playgroud)
/Android\s+([\d\.]+)/
on 的正则表达式window.navigator.userAgent
将获取Android版本号.
我无法发表评论,因为我没有足够的代表......只是想补充说我必须将neiker的代码更改为
var match = ua.match(/Android\s([0-9\.]*)/i);
Run Code Online (Sandbox Code Playgroud)
使其不区分大小写,因为Galaxy S3在其用户代理中返回"android"而不是Android
归档时间: |
|
查看次数: |
42101 次 |
最近记录: |