He estado buscando un código que me permita detectar si el usuario que visita el sitio web tiene Firefox 3 o 4. Todo lo que he encontrado es código para detectar el tipo de navegador, pero no la versión.
¿Cómo puedo detectar la versión de un navegador como este?
Respuestas:
Puede ver lo que dice el navegador y utilizar esa información para iniciar sesión o probar varios navegadores.
fuente
M[1] = tem[1]
lugar deM[2]
? Con el código tal como está actualmente, la cadena de agente de usuario de Opera 12.14Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14
devuelve el resultadoOpera 9.80 12.14
. OMI, el resultado correcto sería elOpera 12.14
que se lograría con mi sugerencia.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 es un agente de usuario muy destacado, desafortunadamente, así que realmente no puedo ignorarlo ...Esta es una mejora en la respuesta de Kennebec.
De esta manera, puede protegerse de la oscuridad del código.
fuente
Esto combina la respuesta de Kennebec (K) con la respuesta de Hermann Ingjaldsson (H):
fuente
Aquí hay varias bibliotecas prominentes que manejan la detección del navegador a partir de mayo de 2019.
Bowser por lancedikson - 3,761 ★ s - Última actualización 26 de mayo de 2019 - 4.8KB
* admite Edge basado en cromo
Platform.js por bestiejs - 2,250 ★ s - Última actualización 30 de octubre de 2018 - 5.9KB
jQuery Browser por gabceb - 504 ★ s - Última actualización 23 de noviembre de 2015 - 1.3KB
Detect.js (Archivado) por darcyclarke - 522 ★ s - Última actualización 26 de octubre de 2015 - 2.9KB
Detección del navegador (archivado) por QuirksMode - Última actualización 14 de noviembre de 2013 - 884B
Menciones notables:
Otras lecturas
fuente
La biblioteca JavaScript de Bowser ofrece esta funcionalidad.
Parece estar bien mantenido.
fuente
Use esto: http://www.quirksmode.org/js/detect.html
fuente
Estaba buscando una solución para mí, ya que jQuery 1.9.1 y superior han eliminado la
$.browser
funcionalidad. Se me ocurrió esta pequeña función que funciona para mí. Necesita una variable global (he llamado mine _browser) para verificar qué navegador es. He escrito un jsfiddle para ilustrar cómo se puede usar, por supuesto, se puede ampliar para otros navegadores simplemente agregando una prueba para _browser.foo, donde foo es el nombre del navegador. Hice solo los populares.detectBrowser ()
Para verificar si el navegador actual es Opera, lo haría
Editar Se corrigió el formato, se corrigió la detección de IE11 y Opera / Chrome, se cambió a browserResult del resultado. Ahora el orden de las
_browser
teclas no importa. Enlace jsFiddle actualizado .11/08/2015 Editar Se agregó un nuevo caso de prueba para Internet Explorer 12 (EDGE), se solucionó un pequeño problema de expresión regular. Enlace jsFiddle actualizado .
fuente
Esto devolverá una matriz, el primer elemento es el nombre del navegador, el segundo elemento es el número de versión completo en formato de cadena.
fuente
jQuery puede manejar esto bastante bien ( jQuery.browser )
EDITAR: Como Joshua escribió en su comentario a continuación, la propiedad jQuery.browser ya no es compatible con jQuery desde la versión 1.9 (lea las notas de la versión jQuery 1.9 para más detalles). El equipo de desarrollo de jQuery recomienda utilizar un enfoque más completo, como adaptar la interfaz de usuario con la biblioteca Modernizr .
fuente
En Javascript puro, puede hacer una coincidencia RegExp
navigator.userAgent
para encontrar la versión de Firefox:ffVersion
seráundefined
si no es un navegador Firefox.Ver ejemplo de trabajo →
fuente
Mire
navigator.userAgent
-Firefox/xxx.xxx.xxx
se especifica justo al final.fuente
fuente
Escribí un detector de versión basado en la respuesta de Hermann Ingjaldsson, pero más robusto y que devuelve un objeto con datos de nombre / versión. Cubre los principales navegadores, pero no me molesto con la gran cantidad de dispositivos móviles y los menores:
Luego se puede usar así:
fuente
Vea la demostración aquí .. http://jsfiddle.net/hw4jM/3/
fuente
Hice un script en código ASP para detectar el navegador, la versión del navegador, el sistema operativo y la versión del sistema operativo. La razón por la que hice esto en ASP fue porque quiero almacenar los datos en una base de datos de registro. Así que tuve que detectar el lado del servidor del navegador.
Aquí está el código:
fuente
Esta página parece tener un fragmento bastante bueno que solo usa la propiedad appString y appVersion como último recurso, ya que afirma que no son confiables con ciertos navegadores. El código en la página es el siguiente:
fuente
Agregando mi propia implementación de la respuesta de Hermann. Necesitaba la detección del sistema operativo, por lo que se agregó. También incluye un código ES6 (porque tenemos un transpilador) que puede necesitar para ES5-ify.
Devoluciones:
Object {browser: "Chrome", version: "50", os: "UNIX"}
fuente
Quiero compartir este código que escribí para el problema que tuve que resolver. ¡Fue probado en la mayoría de los principales navegadores y funciona de maravilla para mí!
Puede parecer que este código es muy similar a las otras respuestas, pero se modificó para que pueda usarlo en lugar del objeto del navegador en jquery que me faltó recientemente, por supuesto, es una combinación de los códigos anteriores, con pequeñas mejoras de mi parte la hice:
fuente
fuente
Lo uso para obtener el nombre y el número (int) de la versión del navegador real:
Esto corre en
Cromo ; Firefox Safari Internet Explorer (> = 9); Ópera Borde
Para mi.
fuente
Aquí esto tiene una mejor compatibilidad que el fragmento @kennebec;
devolverá el nombre y la versión del navegador (devuelve 72 en lugar de 72.0.3626.96).
Probado en Safari, Chrome, Opera, Firefox, IE, Edge, UCBrowser, también en dispositivos móviles.
fuente
fuente
Escribí esto para mis necesidades.
Obtiene información como si es un dispositivo móvil o si tiene una pantalla de retina
intentalo
fuente
Para cualquier aplicación PWA que use angular, puede poner el código para verificar si el navegador es compatible o no en la sección del cuerpo de index.html -
fuente
Aquí está la versión de Java para alguien a quien le gustaría hacerlo en el lado del servidor utilizando la cadena devuelta por
HttpServletRequest.getHeader("User-Agent");
Está trabajando en las 70 configuraciones de navegador diferentes que utilicé para las pruebas.
fuente
fuente