宝哥软件园

JS判断客户端类型应该知道的四种方法

编辑:宝哥软件园 来源:互联网 时间:2021-09-01

前言

当我们写响应布局时,我们总是考虑它是否是移动终端。基于此,我们总结了四种判断客户端是ios还是安卓的方法。分享给大家参考学习。让我们来看看边肖的详细介绍。

方法如下:

1.第一种:通过判断浏览器的userAgent和使用规律来判断是ios还是安卓客户端

用户代理的中文名称是User Agent,它是Http协议的一部分,也是头域的一部分。用户代理也简称为UA。它是一个特殊的字符串头,是一个提供浏览器类型和版本、操作系统和版本、浏览器内核等信息的标识符。通过这种识别,用户访问的网站可以显示不同的布局,为用户提供更好的体验或进行信息统计;比如用手机访问谷歌和用电脑访问是不一样的,是谷歌根据访问者的UA来判断的。UA可以伪装。

浏览器UA字符串的标准格式:浏览器标识(操作系统标识;加密级别标识;浏览器语言)呈现引擎标识版本信息。但是每个浏览器都不一样。

代码如下:

脚本类型=' text/JavaScript ' var u=navigator . user agent;var is andoid=u . indexof(' Android ')-1 | | u . indexof(' Adr ')-1;//安卓终端var isiOS=!u.match(/(i[^;] ;(U;)?CPU。MAC OS X/);//ios终端提醒('是Android:' IsAnDroid ');Alert('是iOS吗:' ISIOs ');/script2。类型二:检查是否是Mobile、ipad、iphone、微信、QQ等。

2.1代码如下:

脚本类型='text/javascript'//判断接入终端varbrowser={ version : function(){ var u=navigator . user agent,app=navigator.appversion返回{trident:u。的索引('三叉戟')-1,//IE内核presto3360u。的索引(' presto')-1,//Opera内核WebKit :u。的索引(' Apple WebKit')-1,//apple,Google内核gecko:u。indexof(' gecko ')-1 u . indexof(' khtml ')==-1,//Firefox内核mobile:U.match (/applewebkit。*移动。*/),//是移动终端ios:吗!u.match(/(i[^;] ;(U;)?Mac OS x/),//IOs终端android:u.indexof('安卓')-1 | | u.indexof ('ADR')-1,//安卓终端iphone 3360 u . indexof(' iPhone ')-1,//无论是iPhone还是QQHD浏览器iPad : U. Index of ('iPad')-1,iPad web App是否3360 u . Index of(' Safari ')=-1,//Web是否要编程,没有头和('微信使')的索引-1,//微信(2015年1月22日添加)qq:u。匹配(/ sqq/I)=' QQ '//QQ };}(),language :(navigator . browser language | | navigator . language)。tolower case ()}/script 2.2用法

/确定IE内核是否if(browser . versions . trident){ alert(' is IE ');}//确定webKit内核if(browser . versions . webKit){ alert(' iswebkit ');}//判断移动终端是否if(browser . versions . mobile | | browser . versions . Android | | browser . versions . IOs){ alert('移动终端');}2.3检测浏览器语言

current lang=navigator . language;//判断除IE以外的其他浏览器使用的语言如果(!CurrentLang){//判断IE浏览器使用的语言currentlang=navigator。browserlanguage} alert(CurrentLang);3.确定iPhone | iPad | iPod | iOS |安卓客户端

代码如下:

if(/(iPhone | iPad | iPod | iOS)/I . test(Navigator。用户代理){//确定iPhone | iPad | iPod | iOS//Alert(导航器)。用户代理);window . location . href=' iphone . html ';} else if(/(Android)/I . test(navigator . user agent)){//judge Android//alert(navigator . user agent);window . location . href=' Android . html ';} else {//PC window . location . href=' PC . html ';};4.确定电脑是否是移动终端

代码如下:

脚本/判断是否手机端访问var userAgentInfo=导航器。用户代理。tolowercase();var agent=[' Android ',' iphone ',' symbianos ',' windows phone ',' ipad ',' ipod '];var ly=document.referrer//返回导航到当前网页的超链接所在网页的(var v=0;五。代理人。长度;v){ if(usergentinfo。indexof(代理[v])=0(ly==' ' | | ly==null)){ this。位置。http://米.***.com ';//wap端地址} }/script5 .常用跳转代码

看代码

脚本类型=' text/JavaScript '/borwserredict(函数browserredict(){ var sUserAgent=navigator。用户代理。tolowercase();var bisi pad=SuSeragent。match(/ipad/I)=' ipad ';var bIsIphone=suseragent。匹配(/iphone OS/I)=' iphone OS ';var Bismidp=SuSeragent。match(/midp/I)=' midp ';var bisuc 7=suseragent。匹配(/RV :1。2 .3 .4/I)=' RV :1。2 .3 .4 ';var bIsUc=SuSeragent。match(/ucweb/I)=' web ';var bIsCE=SuSeragent。match(/windows ce/I)=' windows ce ';var bIsWM=SuSeragent。match(/windows mobile/I)=' windows mobile ';var bisAnDroid=SuSeragent。匹配(/Android/I)=' Android ';var pathname=位置。pathname if(Bisipad | | Bisiphone | | BisIdp | | BisUC 7 | | BisUC | | BisCe | | BisWM | | BisAndroid){ window。位置。href=' http://m。极客JC。“com”路径名;//wap端地址} })();/script总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。

更多资讯
游戏推荐
更多+