使用Javascript判断浏览器终端设备(PC、IOS(iphone)、Android)


Posted in Javascript onJanuary 04, 2017

WEB开发中如何通过Javascript来判断终端为PC、IOS(iphone)、Android呢?

可以通过判断浏览器的userAgent,用正则来判断手机是否是ios和Android客户端。

var u = navigator.userAgent;
 isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端
 isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端

下面一个比较全面的浏览器检查函数,提供更多的检查内容,你可以检查是否是移动端(Mobile)、ipad、iphone、微信、QQ等。

<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.*/), //是否为移动终端
   ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
   android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端
   iPhone: u.indexOf('iPhone') > -1 , //是否为iPhone或者QQHD浏览器
   iPad: u.indexOf('iPad') > -1, //是否iPad
   webApp: u.indexOf('Safari') == -1, //是否web应该程序,没有头部与底部
   weixin: u.indexOf('MicroMessenger') > -1, //是否微信 (2015-01-22新增)
   qq: u.match(/\sQQ/i) == " qq" //是否QQ
  };
 }(),
 language:(navigator.browserLanguage || navigator.language).toLowerCase()
}
</script>

使用方法:

//判断是否IE内核
if(browser.versions.trident){ alert("is IE"); }
//判断是否webKit内核
if(browser.versions.webKit){ alert("is webKit"); }
//判断是否移动端
if(browser.versions.mobile||browser.versions.android||browser.versions.ios){ alert("移动端"); }
检测浏览器语言
currentLang = navigator.language; //判断除IE外其他浏览器使用语言
if(!currentLang){//判断IE浏览器使用语言
 currentLang = navigator.browserLanguage;
}
alert(currentLang);

上面只是平时用的最多的一种方法,其实还有第二种方法:

if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
 //alert(navigator.userAgent); 
 window.location.href ="iPhone.html";
} else if (/(Android)/i.test(navigator.userAgent)) {
 //alert(navigator.userAgent); 
 window.location.href ="Android.html";
} else {
 window.location.href ="pc.html";
};

不同的终端设备采用不同的响应策略,具体场景灵活运用把哈哈。

以上所述是小编给大家介绍的使用Javascript判断浏览器终端设备(PC、IOS(iphone)、Android),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
解决 firefox 不支持 document.all的方法
Mar 12 Javascript
return false,对阻止事件默认动作的一些测试代码
Nov 17 Javascript
基于jquery库的tab新形式使用
Nov 16 Javascript
JS+CSS实现自动切换的网页滑动门菜单效果代码
Sep 14 Javascript
微信js-sdk预览图片接口及从拍照或手机相册中选图接口用法示例
Oct 13 Javascript
使用纯JS代码判断字符串中有多少汉字的实现方法(超简单实用)
Nov 12 Javascript
将JSON字符串转换成Map对象的方法
Nov 30 Javascript
JS获得一个对象的所有属性和方法实例
Feb 21 Javascript
Vue 2.0 服务端渲染入门介绍
Mar 29 Javascript
基于vue2实现左滑删除功能
Nov 28 Javascript
使用JavaScript获取Django模板指定键值数据
May 27 Javascript
jquery实现鼠标悬浮弹出气泡提示框
Dec 23 jQuery
jquery+ajax实现省市区三级联动效果简单示例
Jan 04 #Javascript
基于jQuery实现火焰灯效果导航菜单
Jan 04 #Javascript
深入理解Javascript中的valueOf与toString
Jan 04 #Javascript
使用UrlConnection实现后台模拟http请求的简单实例
Jan 04 #Javascript
js实现定时进度条完成后切换图片
Jan 04 #Javascript
12306 刷票脚本及稳固刷票脚本(防挂)
Jan 04 #Javascript
深入理解JavaScript中的预解析
Jan 04 #Javascript
You might like
PHP 网络开发详解之远程文件包含漏洞
2010/04/25 PHP
PHP的autoload自动加载机制使用说明
2010/12/28 PHP
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
2011/12/19 PHP
ci检测是ajax还是页面post提交数据的方法
2014/11/10 PHP
给WordPress的编辑后台添加提示框的代码实例分享
2015/12/25 PHP
有道JavaScript监听浏览器的问题
2010/06/23 Javascript
js控制CSS样式属性语法对照表
2012/12/11 Javascript
Window.Open如何在同一个标签页打开
2014/06/20 Javascript
js时间日期格式化封装函数
2014/12/02 Javascript
AspNet中使用JQuery boxy插件的确认框
2015/05/20 Javascript
纯js模拟div层弹性运动的方法
2015/07/27 Javascript
JS+CSS实现大气的黑色首页导航菜单效果代码
2015/09/10 Javascript
jQuery设置单选按钮radio选中/不可用的实例代码
2016/06/24 Javascript
Bootstrap基本插件学习笔记之轮播幻灯片(23)
2016/12/08 Javascript
angularJs中datatable实现代码
2017/06/03 Javascript
微信小程序实现animation动画
2018/01/26 Javascript
jQuery实现的点击标题文字切换字体效果示例【测试可用】
2018/04/26 jQuery
Angular5整合富文本编辑器TinyMCE的方法(汉化+上传)
2020/05/26 Javascript
[16:27]DOTA2 HEROS教学视频教你分分钟做大人-艾欧
2014/06/11 DOTA
python使用socket向客户端发送数据的方法
2015/04/29 Python
详解在Python的Django框架中创建模板库的方法
2015/07/20 Python
Python 由字符串函数名得到对应的函数(实例讲解)
2017/08/10 Python
Python 多维List创建的问题小结
2019/01/18 Python
基于torch.where和布尔索引的速度比较
2020/01/02 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
Python接口开发实现步骤详解
2020/04/26 Python
Python+Appium实现自动化清理微信僵尸好友的方法
2021/02/04 Python
美国在线眼镜商城:Eyeglasses.com
2017/06/26 全球购物
采购员岗位职责
2013/11/15 职场文书
生物专业个人自荐信范文
2013/11/29 职场文书
夏季药店促销方案
2014/08/22 职场文书
2015年班主任德育工作总结
2015/05/21 职场文书
如何使用vue3打造一个物料库
2021/05/08 Vue.js
POST提交数据常见的四种方式
2022/01/18 HTML / CSS
解析python中的jsonpath 提取器
2022/01/18 Python
vue使用element-ui按需引入
2022/05/20 Vue.js