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 相关文章推荐
jQuery EasyUI 中文API Layout(Tabs)
Apr 27 Javascript
关于hashchangebroker和statehashable的补充文档
Aug 08 Javascript
ExtJs Excel导出并下载IIS服务器端遇到的问题
Sep 16 Javascript
自己动手制作jquery插件之自动添加删除行的实现
Oct 13 Javascript
js中将String转换为number以便比较
Jul 08 Javascript
在JavaScript中操作时间之getYear()方法的使用教程
Jun 11 Javascript
js密码强度实时检测代码
Mar 02 Javascript
js实现瀑布流效果(自动生成新的内容)
Mar 16 Javascript
深入理解Vuex 模块化(module)
Sep 26 Javascript
javascript对HTML字符转义与反转义
Dec 13 Javascript
微信小程序常用赋值方法小结
Apr 30 Javascript
解决vux 中popup 组件Mask 遮罩在最上层的问题
Nov 03 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
德生S2000南麂列岛台湾FM收听记录
2021/03/02 无线电
你可能不知道PHP get_meta_tags()函数
2014/05/12 PHP
php将远程图片保存到本地服务器的实现代码
2015/08/03 PHP
TP5框架使用QueryList采集框架爬小说操作示例
2020/03/26 PHP
jQuery EasyUI API 中文文档 - Panel面板
2011/09/30 Javascript
Javascript base64编码实现代码
2011/12/02 Javascript
JQuery操作单选按钮以及复选按钮示例
2013/09/23 Javascript
Bootstrap Paginator分页插件使用方法详解
2016/05/30 Javascript
Angular.js中上传指令ng-upload的基本使用教程
2017/07/30 Javascript
详解webpack2+node+react+babel实现热加载(hmr)
2017/08/24 Javascript
JS实现生成由字母与数字组合的随机字符串功能详解
2018/05/25 Javascript
JavaScript的Object.defineProperty详解
2018/07/09 Javascript
Jquery动态列功能完整实例
2019/08/30 jQuery
解决VUE 在IE下出现ReferenceError: Promise未定义的问题
2020/11/07 Javascript
vue的hash值原理也是table切换实例代码
2020/12/14 Vue.js
vue.js watch经常失效的场景与解决方案
2021/01/07 Vue.js
Python字符串切片操作知识详解
2016/03/28 Python
python实现简易内存监控
2018/06/21 Python
在mac下查找python包存放路径site-packages的实现方法
2018/11/06 Python
python网络爬虫 Scrapy中selenium用法详解
2019/09/28 Python
浅析python redis的连接及相关操作
2019/11/07 Python
浅谈keras中Dropout在预测过程中是否仍要起作用
2020/07/09 Python
CSS3 :default伪类选择器使用简介
2018/03/15 HTML / CSS
基于HTML5的WebSocket的实例代码
2018/08/15 HTML / CSS
html5指南-2.如何操作document metadata
2013/01/07 HTML / CSS
东南亚旅游平台:The Trip Guru
2018/01/01 全球购物
如何选择使用结构还是类
2014/05/30 面试题
师说教学反思
2014/02/07 职场文书
中等生评语大全
2014/05/04 职场文书
人事经理岗位职责范本
2014/08/04 职场文书
人民调解协议书范本
2014/10/11 职场文书
化验室岗位职责
2015/02/14 职场文书
2016元旦文艺汇演主持词(开场白+结束语)
2015/12/03 职场文书
Nginx使用X-Accel-Redirect实现静态文件下载的统计、鉴权、防盗链、限速等
2021/04/04 Servers
python opencv人脸识别考勤系统的完整源码
2021/04/26 Python
Python机器学习之PCA降维算法详解
2021/05/19 Python