resumo:
Nosso trabalho mais importante para o desenvolvimento do front-end é a compatibilidade, a compatibilidade do sistema, a compatibilidade do navegador etc. Hoje, compartilharei um método para julgar o sistema operacional e o navegador que encapsulei no projeto.
sistema operacional:
var os = (function() { var UserAgent = navigator.userAgent.toLowerCase(); return { isIpad : /ipad/.test(UserAgent), isIphone : /iphone os/.test(UserAgent), isAndroid : /android/.test(UserAgent), isWindowsCe : /windows ce/.test(UserAgent), isWindowsMobile : /Windows Mobile /.Test (UserAgent), Iswin2K: /Windows NT 5.0 /.Test (UserAgent), ISXP: /Windows NT 5.1 /.Test (UserAgent), ISVista: /Windows NT 6.0 /.Test (UserAgent), ISWIN7: /Windows NT 6.1 /.Test (.Testent) (UserAgent), ISWIN7: /. iswin81: /windows nt 6.3 /.test (userAgent)};} ());Se você deseja determinar se o sistema é um iPad, você só precisa determinar se (os.isipad) {}.
Navegador:
var bw = (function () {var userAgent = Navigator.UserAgent.TolowerCase (); return {ISUC: /ucweb/.test(userAgent), // UC Browser isChroMe: /chrome/.test(userAgent.Substr(e /firefox/.test(userAgent), // firefox isopera: /opera/.test(userAgent), // Opera navegador issafire: /safari/.test(useraGent) &&! /chrome/.test (userAgent), // firefox isopera:////! /safari/.test(UserAgent) &&! /chrome/.test (userAgent), // Safeire navegador is360: /360se/.test(userAgent), // 360 BrowSer isbaidu: /bidubrowser/testinal(seragent), // Baider Brows BrowStuRoTuSoTer/Testinal(eTeragent), // Baider // SOGOU navegador ISIE6: /msie 6.0 /.test (userAgent), // ie6 isie7: /msie 7.0 /.test (userAgent), // ie7 isie8: /msie 8.0 /.test (userAgent), // ie8 iSie9: /msie 9.0 /.stest (userAgent), // ie8 10.0/.test (userAgent), // ie10 ISIE11:/msie 11.0/.test (userAgent), // ie11 islb: /lbbrowser/.test(uSerAgent): // Cheetah Browser iswx: /momessenger/.testinalq. /qqbrowser/.test(useRagent) // navegador qq};} ());]
resumo:
Os navegadores são testados por mim. O que pode ter problemas é o navegador Chrome. Como a maioria dos navegadores usa o kernel do webkit, interceptei a navegação Chrome para distingui -los. Se a posição da informação do Navigador do Chrome ou o comprimento após o Chrome mudar no futuro, os problemas surgirão facilmente, mas está tudo bem no momento.
Atualmente, porque o navegador da UC em telefones celulares geralmente bloqueia os anúncios do Baidu, mas não bloqueia os anúncios do Google. Podemos adicionar para determinar se é um navegador UC. Ele não exibirá anúncios do Baidu, mas os anúncios do Google serão exibidos.
if (Navigator.UserAgent.Indexof ('UCBrowser')> -1) {alert ("UC Browser");} else {// não é uma operação realizada pelo navegador}De fato, algumas operações especiais de navegadores específicos podem ser passados
JS recebe informações do navegador
Nome do Código do Navegador: Navigator.AppCodename
Nome do navegador: Navigator.AppName
Número da versão do navegador: Navigator.AppVersion
Suporte para Java: Navigator.javaenabled ()
MIME TIPO (ARAY): Navigator.mimetypes
Plataforma do sistema: Navigator.platform
Plugins (matriz): navegator.plugins
Agente do usuário: Navigator.UserAgent