Eu tenho procurado por um código que me permita detectar se o usuário que visita o site possui o Firefox 3 ou 4. Tudo o que encontrei é um código para detectar o tipo de navegador, mas não a versão.
Como posso detectar a versão de um navegador como este?
Respostas:
Você pode ver o que o navegador diz e usar essas informações para registrar ou testar vários navegadores.
fonte
M[1] = tem[1]
e nãoM[2]
? Com o código atual, a string do agente do Opera 12.14Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14
retorna o resultadoOpera 9.80 12.14
. OMI, o resultado correto seria oOpera 12.14
que seria alcançado por minha sugestão.tem = ua.match(/\b(OPR|Edge)\/(\d+)/i); if (tem != null) return {name : tem[1] === 'OPR' ? 'Opera' : tem[1], version : tem[2]};
Mozilla/5.0 (Linux; Android 5.0; Nexus 9 Build/LRX21R; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/45.0.2454.95 Safari/537.36 [FB_IAB/FB4A;FBAV/50.0.0.10.54;]
Este é um agente de usuário muito proeminente, infelizmente, portanto não podemos ignorá-lo ...Esta é uma melhoria na resposta de Kennebec.
Dessa forma, você pode se proteger da obscuridade do código.
fonte
Isso combina a resposta de kennebec (K) com a resposta de Hermann Ingjaldsson (H):
fonte
Aqui estão várias bibliotecas importantes que lidam com a detecção do navegador a partir de maio de 2019.
Bowser por lancedikson - 3.761 ★ s - Última atualização em 26 de maio de 2019 - 4,8KB
* suporta Edge com base no Chromium
Platform.js por bestiejs - 2.250 ★ s - Última atualização em 30 de outubro de 2018 - 5,9KB
jQuery Browser por gabceb - 504 ★ s - Última atualização 23 de novembro de 2015 - 1,3KB
Detect.js (arquivado) por darcyclarke - 522 ★ s - Última atualização em 26 de outubro de 2015 - 2,9KB
Detecção de navegador (arquivada) por QuirksMode - Última atualização em 14 de novembro de 2013 - 884B
Menções notáveis:
Leitura adicional
fonte
A biblioteca JavaScript do bowser oferece essa funcionalidade.
Parece estar bem conservado.
fonte
Use isto: http://www.quirksmode.org/js/detect.html
fonte
Eu estava procurando uma solução para mim, pois o jQuery 1.9.1 e superior removeram a
$.browser
funcionalidade. Eu vim com essa pequena função que funciona para mim. Ele precisa de uma variável global (eu chamei mine _browser) para verificar qual navegador é. Eu escrevi um jsfiddle para ilustrar como ele pode ser usado, é claro que pode ser expandido para outros navegadores apenas adicionando um teste para _browser.foo, onde foo é o nome do navegador. Eu fiz apenas os populares.detectBrowser ()
Para verificar se o navegador atual é o Opera, você faria
Editar Corrigida a formatação, corrigida a detecção para IE11 e Opera / Chrome, alterada para browserResult do resultado. Agora, a ordem das
_browser
chaves não importa. Link jsFiddle atualizado .11/08/2015 Editar Adicionada nova caixa de teste para o Internet Explorer 12 (EDGE), corrigido um pequeno problema de regexp. Link jsFiddle atualizado .
fonte
Isso retornará uma matriz, o primeiro elemento é o nome do navegador, o segundo elemento é o número completo da versão no formato de string.
fonte
jQuery pode lidar com isso muito bom ( jQuery.browser )
EDIT: Como Joshua escreveu em seu comentário abaixo, a propriedade jQuery.browser não é mais suportada no jQuery desde a versão 1.9 (leia as notas de versão do jQuery 1.9 para obter mais detalhes). A equipe de desenvolvimento do jQuery recomenda usar uma abordagem mais completa, como adaptar a interface do usuário à biblioteca Modernizr .
fonte
Em Javascript puro, você pode fazer uma correspondência RegExp
navigator.userAgent
para encontrar a versão do Firefox:ffVersion
será,undefined
se não, um navegador Firefox.Veja exemplo de trabalho →
fonte
Olhe para
navigator.userAgent
-Firefox/xxx.xxx.xxx
é especificado logo no final.fonte
fonte
Escrevi um detector de versão baseado na resposta de Hermann Ingjaldsson, mas mais robusto e que retorna um objeto com dados de nome / versão. Ele cobre os principais navegadores, mas eu não me importo com a infinidade de navegadores móveis e pequenos:
Em seguida, pode ser usado assim:
fonte
Veja a demonstração aqui .. http://jsfiddle.net/hw4jM/3/
fonte
Eu criei um script em código ASP para detectar navegador, versão do navegador, SO e versão do SO. O motivo para eu fazer isso no ASP foi porque eu quero armazenar os dados em um banco de dados de log. Então eu tive que detectar o lado do servidor do navegador.
Aqui está o código:
fonte
Esta página parece ter um snippet bastante interessante que usa apenas a propriedade appString e appVersion como último recurso, pois alega que eles não são confiáveis em determinados navegadores. O código na página é o seguinte:
fonte
Adicionando minha própria implementação da resposta de Hermann. Eu precisava de detecção do sistema operacional para que tenha sido adicionado. Também inclui algum código ES6 (porque temos um transpiler) que você pode precisar para ES5-ify.
Devoluções:
Object {browser: "Chrome", version: "50", os: "UNIX"}
fonte
Quero compartilhar esse código que escrevi para o problema que tive que resolver. Foi testado na maioria dos principais navegadores e funciona como um encanto, para mim!
Pode parecer que esse código seja muito parecido com as outras respostas, mas foi modificado para que eu possa usá-lo no instante do objeto do navegador no jquery que perdi para mim recentemente, é claro que é uma combinação dos códigos acima, com pequenas melhorias de minha parte eu fiz:
fonte
fonte
Eu uso isso para obter o Nome e o número (int) da versão do navegador atual:
Esta corrida em
Cromada ; Raposa de fogo ; Safari; Internet Explorer (> = 9); Ópera; Beira
Para mim.
fonte
Aqui, isso tem melhor compatibilidade do que o snippet @kennebec;
retornará o nome e a versão do navegador (retorna 72 em vez de 72.0.3626.96).
Testado no Safari, Chrome, Opera, Firefox, IE, Edge, UCBrowser, também no celular.
fonte
fonte
Eu escrevi isso para as minhas necessidades.
Ele obtém informações como se é um dispositivo móvel ou se possui uma tela retina
tente
fonte
Para qualquer aplicativo PWA usando angular, você pode colocar o código para verificar se o navegador é suportado ou não na seção body de index.html -
fonte
Aqui está a versão java para alguém que gostaria de fazê-lo no lado do servidor usando a String retornada por
HttpServletRequest.getHeader("User-Agent");
Ele está trabalhando nas 70 configurações diferentes de navegador que usei para testar.
fonte
fonte