sol*_*eil 66 html javascript browser jquery
我需要在移动网站上更改一些按钮和文本,具体取决于用户是在Android或iOS浏览器上查看它.有可靠的方法来执行检查吗?
Ano*_*oop 145
var isMobile = {
Windows: function() {
return /IEMobile/i.test(navigator.userAgent);
},
Android: function() {
return /Android/i.test(navigator.userAgent);
},
BlackBerry: function() {
return /BlackBerry/i.test(navigator.userAgent);
},
iOS: function() {
return /iPhone|iPad|iPod/i.test(navigator.userAgent);
},
any: function() {
return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Windows());
}
};
Run Code Online (Sandbox Code Playgroud)
Chr*_*son 13
我会使用该navigator.useragent属性获取useragent-string,解析它,并检测操作系统.
这是一个如何做到这一点的例子.
更新:
由于这个问题很受欢迎,我想我会在答案中添加一些额外的信息.
一般来说,浏览器嗅探几乎不是最好的方法.为什么?嗯,有很多原因,但这里有两个好的原因:
话虽如此,如果你真的需要使用浏览器/操作系统检测,那么不要重新发明轮子,不要试图自己做 - 你将陷入一个痛苦和模糊的警告的世界!我建议您使用像WhichBrowser这样的库,它将为您提供一个方便的JavaScript对象,其中包含有关操作系统,浏览器,渲染引擎和设备的信息.