JS如何判断安卓还是iOS 一种比较被认同的方式
来源:互联网 发布:小号交易平台源码 编辑:程序博客网 时间:2024/06/15 18:09
我们做前端开发时,需要JS判断客户端是否是iOS或者Android,那么什么方法最靠谱,多数人比较认同呢?我们可以通过userAgent来判断,比如检测某些关键字,例如:AppleWebKit*****Mobile或AppleWebKit,需要注意的是有些浏览器的userAgent中并不包含AppleWebKit关键字,可能会是Linux,UCBrowser等等。
下面是Javascript代码:
<script type="text/javascript">
/*
* 智能机浏览器版本信息:
*/
var browser={
versions:function(){
var u = navigator.userAgent, app = navigator.appVersion;
return {//移动终端浏览器版本信息
trident: u.indexOf('Trident') > -1, //IE内核
presto: u.indexOf('Presto') > -1, //opera内核
webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核
mobile: !!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/), //是否为移动终端
ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器
iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQ HD浏览器
iPad: u.indexOf('iPad') > -1, //是否iPad
webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
};
}(),
language:(navigator.browserLanguage || navigator.language).toLowerCase()
}
document.writeln("语言版本: "+browser.language);
document.writeln(" 是否为移动终端: "+browser.versions.mobile);
document.writeln(" ios终端: "+browser.versions.ios);
document.writeln(" android终端: "+browser.versions.android);
document.writeln(" 是否为iPhone: "+browser.versions.iPhone);
document.writeln(" 是否iPad: "+browser.versions.iPad);
document.writeln(navigator.userAgent);
</script>
- JS如何判断安卓还是iOS 一种比较被认同的方式
- js判断请求对象是IOS还是安卓用户
- js判断安卓、ios、还是pc端
- js判断安卓还是ios之后连接跳转
- js判断用户手机是IOS还是安卓
- js判断客户端是iOS还是安卓
- JS如何判断用户使用安卓还是苹果
- 如何判断H5移动端是IOS还是安卓
- 如何判断当前移动设备是IOS还是安卓
- java判断IOS还是安卓,跳转不同的连接
- js判断安卓还是苹果机
- 判断是ios还是安卓访问
- 判断设备是ios还是安卓
- mui判断是ios还是安卓
- JS判断网页是在安卓打开还是IOS打开
- js判断安卓或者ios
- js判断安卓(ios)
- js判断ios设备安卓设备
- 通过设置SolrInputDocument 的boost来改变文档评分
- 你必须了解的Android 6.0权限申请
- 软考总结
- SecureCRT中文乱码解决方法(linux系统下连接服务器)
- iOS中 assign 和 weak 修饰符的区别
- JS如何判断安卓还是iOS 一种比较被认同的方式
- 检测当前网络状态,,2g,,3g,,WiFi
- 关于在recycleview中点击item获取对应的viewholder的方法
- MySQL错误信息:-bash:mysql:command not found(linux mysql 登录MYSQL)
- 在MAC上开发Android项目系列—1—给MAC配置牛逼的Android模拟器
- c++入门者需要了解的c++编程思想
- select count(*)和select count(1)的区别
- iOS开发示例————使用CAShapeLayer&UIBezierPath绘制数据饼图
- eclipse 频繁自动关闭问题