对web前端开发,熟知不同的浏览器,的解析是基本技能,下面,我就向大家展示一下,如何获得当前用户所用的终端设备。车子一发动,请准备上车。。。。。。。。。。。。。。。。。。。

<script>
//判断客户端的设备
currentLang = navigator.language; //判断除IE外其他浏览器使用语言
if(!currentLang) { //判断IE浏览器使用语言
currentLang = navigator.browserLanguage;
}
//判断访问终端
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('Linux') > -1, //android终端或者uc浏览器
iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器
iPad: u.indexOf('iPad') > -1, //是否iPad
webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
};
}(),
language: (navigator.browserLanguage || navigator.language).toLowerCase()
} //browser.versions.trident返回真假,真则是IE内核,以此类推browser.versions.webKit是否为谷歌内核
if(browser.versions.iPhone) {
alert("我是苹果设备");
}
if (browser.versions.webKit) {
alert("我是谷歌浏览器");
}
if (browser.versions.mobile) {
alert("我是移动端");
}else{
alert("我是PC端");
};
if(browser.versions.trident){
alert("我是IE浏览器");
}
if (browser.versions.presto) {
alert("我是欧朋浏览器");
}
if (browser.versions.gecko) {
alert("我是火狐浏览器");
}
</script>

最新文章

  1. Java Arrays类进行数组排序
  2. js事件模型与自定义事件
  3. 两个img之间出现间隙的解决方法
  4. JavaWeb学习总结(三)——Tomcat服务器学习和使用(二)
  5. Codeforces Gym 100114 A. Hanoi tower 找规律
  6. 【暑假】[深入动态规划]UVa 1628 Pizza Delivery
  7. hdu 1570 AC
  8. HttpServletRequest、request常用方法、request常见应用、请求转发、RequestDispatcher
  9. USB 传输协议
  10. C语言数据结构----递归的应用(八皇后问题的具体流程)
  11. 条形码(JBarcode)
  12. DotNetCore跨平台~Quartz定时单次任务
  13. 201521123050 《Java程序设计》第12周学习总结
  14. 什么是 Docker
  15. JavaScript判断苹果 iPhone X Series 机型
  16. IntelliJ IDEA/WebStrom破解及JDK配置
  17. python中的双冒号作用
  18. 记账本微信小程序开发一
  19. Uva LA 3902 - Network 树形DP 难度: 0
  20. linux smem 查看各进程使用memory情况

热门文章

  1. 用vue写一个分页器代码
  2. MySQL表内更新时,自动记录时间
  3. 华硕B360主板装机找不到固态硬盘启动
  4. LInux基于nginx与OpenSSL实现https访问
  5. 关于php 7.4编译安装
  6. LNMP安装与配置之Python3
  7. docker 运行centos显示连不上网络
  8. elk快速入门-在kibana中如何使用devtools操作elasticsearch
  9. 【安徽集训】fiend
  10. main方法类 为何由AppClassLoader加载