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 相关文章推荐
JavaScript 事件绑定及深入
Apr 13 Javascript
jQuery插件scroll实现无缝滚动效果
Apr 27 Javascript
用JS实现轮播图效果(二)
Jun 26 Javascript
Vue表单实例代码
Sep 05 Javascript
Angularjs单选框相关的示例代码
Aug 17 Javascript
AngularJS select加载数据选中默认值的方法
Feb 28 Javascript
JavaScript 中 JSON.parse 函数 和 JSON.stringify 函数
Dec 05 Javascript
React 使用Hooks简化受控组件的状态绑定
Mar 18 Javascript
element表格翻页第2页从1开始编号(后端从0开始分页)
Dec 10 Javascript
JS数组方法concat()用法实例分析
Jan 18 Javascript
vue实现购物车加减
May 30 Javascript
JavaScript 实现继承的几种方式
Feb 19 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
队列在编程中的实际应用(php)
2010/09/04 PHP
PHP取进制余数函数代码
2012/01/19 PHP
探讨如何使用SimpleXML函数来加载和解析XML文档
2013/06/07 PHP
百度工程师讲PHP函数的实现原理及性能分析(二)
2015/05/13 PHP
PHP内核探索:哈希表碰撞攻击原理
2015/07/31 PHP
深入理解PHP之源码目录结构与功能说明
2016/06/01 PHP
Yii2框架中日志的使用方法分析
2017/05/22 PHP
一些不错的js函数ajax
2008/08/20 Javascript
javascript 出生日期和身份证判断大全
2008/11/13 Javascript
选择TreeView控件的树状数据节点的JS方法(jquery)
2010/02/06 Javascript
jQuery $.each的用法说明
2010/03/22 Javascript
javascript中的作用域scope介绍
2010/12/28 Javascript
js创建对象的区别示例介绍
2014/07/24 Javascript
JavaScript实现向右伸出的多级网页菜单效果
2015/08/25 Javascript
基于BootStrap的图片轮播效果展示实例代码
2016/05/23 Javascript
HTML中setCapture、releaseCapture 使用方法浅析
2016/09/25 Javascript
JavaScript判断浏览器及其版本信息
2017/01/20 Javascript
jQuery实现下拉菜单动态添加数据点击滑出收起其他功能
2018/06/14 jQuery
Vue实现美团app的影院推荐选座功能【推荐】
2018/08/29 Javascript
jQuery实现简单三级联动效果
2020/09/05 jQuery
JSON stringify方法原理及实例解析
2020/10/23 Javascript
[01:02:54]完美世界DOTA2联赛PWL S2 FTD vs GXR 第一场 11.22
2020/11/26 DOTA
[49:15]DOTA2-DPC中国联赛 正赛 CDEC vs XG BO3 第二场 1月19日
2021/03/11 DOTA
Python中规范定义命名空间的一些建议
2016/06/04 Python
python实现简单聊天应用 python群聊和点对点均实现
2017/09/14 Python
pandas.DataFrame 根据条件新建列并赋值的方法
2018/04/08 Python
Django 浅谈根据配置生成SQL语句的问题
2018/05/29 Python
matplotlib实现热成像图colorbar和极坐标图的方法
2018/12/13 Python
python wav模块获取采样率 采样点声道量化位数(实例代码)
2020/01/22 Python
纪伊国屋新加坡网上书店:Kinokuniya新加坡
2017/12/29 全球购物
地理教师岗位职责
2014/03/16 职场文书
计算机专业毕业生自荐书
2014/06/02 职场文书
试用期转正员工自我评价
2014/09/18 职场文书
公司领导班子对照检查材料
2014/09/24 职场文书
公司给客户的感谢信
2015/01/23 职场文书
MySQL数据库配置信息查看与修改方法详解
2022/06/25 MySQL