JS辨别访问浏览器判断是android还是ios系统


Posted in Javascript onAugust 19, 2014

项目中需要扫描二维码之后自动分辨出是android还是ios系统,针对于不同的系统进行不同的下载。

<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或者QQHD浏览器
iPad: u.indexOf('iPad') > -1, //是否iPad
webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
};
}(),
language: (navigator.browserLanguage || navigator.language).toLowerCase()
}

if (browser.versions.ios || browser.versions.iPhone || browser.versions.iPad) {
window.location="https://itunes.apple.com/xxx";
}
else if (browser.versions.android) {
window.location="http://xxx/xxx.apk";
}

// 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>
Javascript 相关文章推荐
基于jsTree的无限级树JSON数据的转换代码
Jul 27 Javascript
jquery在IE、FF浏览器的差别详细探讨
Apr 28 Javascript
使用Math.floor与Math.random取随机整数的方法详解
May 07 Javascript
自己封装的常用javascript函数分享
Jan 07 Javascript
Backbone View 之间通信的三种方式
Aug 09 Javascript
JavaScript 中有关数组对象的方法(详解)
Aug 15 Javascript
ES6 系列之 WeakMap的使用示例
Aug 06 Javascript
node之本地服务器图片上传的方法示例
Mar 26 Javascript
详解nvm管理多版本node踩坑
Jul 26 Javascript
vue2.0项目集成Cesium的实现方法
Jul 30 Javascript
python虚拟环境 virtualenv的简单使用
Jan 21 Javascript
JavaScript运行机制实例分析
Apr 11 Javascript
JS中实现简单Formatter函数示例代码
Aug 19 #Javascript
用JavaScript实现使用鼠标画线的示例代码
Aug 19 #Javascript
[原创]推荐10款最热门jQuery UI框架
Aug 19 #Javascript
js选择并转移导航菜单示例代码
Aug 19 #Javascript
js遍历子节点子元素附属性及方法
Aug 19 #Javascript
jQuery实现返回顶部功能适合不支持js的浏览器
Aug 19 #Javascript
用循环或if语句从json中取数据示例
Aug 18 #Javascript
You might like
海贼王动画变成“真人”后,凯多神还原,雷利太帅了!
2020/04/09 日漫
什么是短波收听SWL
2021/03/01 无线电
PHP实现MySQL更新记录的代码
2008/06/07 PHP
PHP实现图片旋转效果实例代码
2014/10/01 PHP
Yii2创建表单(ActiveForm)方法详解
2016/07/23 PHP
Laravel Memcached缓存驱动的配置与应用方法分析
2016/10/08 PHP
PHP与Web页面的交互示例详解二
2020/08/04 PHP
PHP dirname(__FILE__)原理及用法解析
2020/10/28 PHP
Jquery 动态循环输出表格具体方法
2013/11/23 Javascript
Javascript全局变量var与不var的区别深入解析
2013/12/09 Javascript
jquery中each方法示例和常用选择器
2014/07/08 Javascript
js实现上一页下一页的效果【附代码】
2016/03/10 Javascript
checkbox批量选中,获取选中项的值的简单实例
2016/06/28 Javascript
前端弹出对话框 js实现ajax交互
2016/09/09 Javascript
Angular2+如何去除url中的#号详解
2017/12/20 Javascript
使用mock.js随机数据和使用express输出json接口的实现方法
2018/01/07 Javascript
React中Ref 的使用方法详解
2020/04/28 Javascript
微信小程序实现选项卡滑动切换
2020/10/22 Javascript
vue 使用class创建和清除水印的示例代码
2020/12/25 Vue.js
详解实现vue的数据响应式原理
2021/01/20 Vue.js
[01:50]WODOTA制作 DOTA2中文宣传片《HERO》
2013/04/28 DOTA
Python贪心算法实例小结
2018/04/22 Python
PyQt5图形界面播放音乐的实例
2019/06/17 Python
在pycharm下设置自己的个性模版方法
2019/07/15 Python
浅谈python 类方法/静态方法
2020/09/18 Python
python 常见的反爬虫策略
2020/09/27 Python
python 实现倒计时功能(gui界面)
2020/11/11 Python
CSS 说明横向进度条最后显示文字的实现代码
2020/11/10 HTML / CSS
大学三年的自我评价
2013/12/25 职场文书
公司道歉信范文
2014/01/09 职场文书
高一生物教学反思
2014/01/17 职场文书
食品行业求职人的自我评价
2014/01/19 职场文书
酒店行政人事部经理职务说明书
2014/02/26 职场文书
政府绩效管理实施方案
2014/05/04 职场文书
环保标语口号
2014/06/13 职场文书
2015夏季作息时间调整通知
2015/04/24 职场文书