JS一些常用判断(包括判断是否是苹果(ios)/安卓(Android)、是否是Safari浏览器、检测浏览器语言等等)

该文介绍了一种通过navigator.userAgent来检测用户设备的方法,包括如何判断是iOS还是Android系统,是否是Safari浏览器,浏览器的语言,以及是否为移动端设备如mobile、iPad、iPhone、微信或QQ环境。同时,还展示了获取IP地址的一种方式。

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

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

一、判断是ios还是android

var isAndroid = navigator.userAgent.indexOf('Android') > -1 || navigator.userAgent.indexOf('Adr') > -1; // 安卓(android)为true
var isiOS = !!navigator.userAgent.match(/(i[^;]+;( U;)? CPU.+Mac OS X/); // 苹果(ios)为true

二、判断是否是Safari浏览器

 // 判断是否Safari浏览器
console.log(/Safari/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent)> -1)  // 是Safari为true,

三、检测浏览器语言

let currentLang = navigator.language;   //判断除IE外其他浏览器使用语言
if(!currentLang){//判断IE浏览器使用语言
    currentLang = navigator.browserLanguage;
}
console.log(currentLang);

四、判断是否是移动端(mobile)、ipad、iphone、微信、QQ等

1.定义方法

//判断访问终端
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()
}

2.使用

// 判断是否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("移动端"); }

五、获取ip地址

<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script>  
<scripttype="text/javascript">  
    console.log(returnCitySN["cip"]+','+returnCitySN["cname"])  
</script>

参考链接
JS判断客户端是否是iOS或者Android:http://caibaojian.com/browser-ios-or-android.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值