手机自带浏览器的强大

本文探讨了在H5前端开发中,如何通过navigator.userAgent属性来识别用户设备的系统类型,包括iOS、安卓等,并提供了三种不同的实现方式,以及它们在实际应用中的局限性和挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

移动端

在大移动端中,大部分都是人手一台手机,大部分机型系统不是ios就是安卓,但是作为h5前端必须得获取是ios还是安卓都是正常,可是你难以相信这个世界坑你的总是有

获取手机浏览器哪个系统

你们确定下面的方式能够获取的对吗?下面是谷歌搜索收集起来的

方式一:

var ua   = navigator.userAgent.toLowerCase();
if((ua.match(/android/i)) == "android") {
 alert("android");
}else if((ua.match(/iPhone/i)) == "iPhone"){
  alert("iPhone");
}else if((ua.match(/iPad/i)) == "iPad"){
  alert("iPad");
}else {
  alert('什么都不是')
}

方式二:

 var sUserAgent = navigator.userAgent.toLowerCase();
 var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";
 var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";
 var bIsMidp = sUserAgent.match(/midp/i) == "midp";
 var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4";
 var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb";
 var bIsAndroid = sUserAgent.match(/android/i) == "android";
 var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce";
 var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";
 if(bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) {
   alert("手机");
 } else {
   alert("电脑");
 }

方式三:

var ua = navigator.userAgent.toLowerCase();
if(/android|adr/gi.test(ua)) {
  // 安卓
  alert('安卓');
}else if(/\(i[^;]+;( U;)? CPU.+Mac OS X/gi.test(ua)){
  //苹果
  alert('苹果');
}else if(/iPad/gi.test(ua)){
  //ipad
  alert('ipad');
}

上面的能够识别是靠的 navigator.userAgent 其中的某个字段,比如

"mozilla/5.0 (linux; android 5.0; sm-g900p build/lrx21t) applewebkit/537.36 (khtml, like gecko) chrome/75.0.3770.100 mobile safari/537.36"

…这些真的能够满足我们吗…事实上…这些都不是你需要的比如华为 mate 10 自带浏览器…获取的 navigator.userAgent:

"mozilla/5.0 (windows; u; windows nt 5.2; en-us) applewebkit/537.36(khtml, like gecko) chrome/40.0.2214.89 safari/537.36"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值