Si enumera todas window.navigator
las propiedades de
console.log(navigator);
Verás algo como esto
# platform = Win32
# appCodeName = Mozilla
# appName = Netscape
# appVersion = 5.0 (Windows; en-US)
# language = en-US
# mimeTypes = [object MimeTypeArray]
# oscpu = Windows NT 5.1
# vendor = Firefox
# vendorSub = 1.0.7
# product = Gecko
# productSub = 20050915
# plugins = [object PluginArray]
# securityPolicy =
# userAgent = Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7
# cookieEnabled = true
# javaEnabled = function javaEnabled() { [native code] }
# taintEnabled = function taintEnabled() { [native code] }
# preference = function preference() { [native code] }
Tenga en cuenta que el oscpu
atributo le da la versión de Windows. Además, debes saber que:
'Windows 3.11' => 'Win16',
'Windows 95' => '(Windows 95)|(Win95)|(Windows_95)',
'Windows 98' => '(Windows 98)|(Win98)',
'Windows 2000' => '(Windows NT 5.0)|(Windows 2000)',
'Windows XP' => '(Windows NT 5.1)|(Windows XP)',
'Windows Server 2003' => '(Windows NT 5.2)',
'Windows Vista' => '(Windows NT 6.0)',
'Windows 7' => '(Windows NT 6.1)',
'Windows 8' => '(Windows NT 6.2)|(WOW64)',
'Windows 10' => '(Windows 10.0)|(Windows NT 10.0)',
'Windows NT 4.0' => '(Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT)',
'Windows ME' => 'Windows ME',
'Open BSD' => 'OpenBSD',
'Sun OS' => 'SunOS',
'Linux' => '(Linux)|(X11)',
'Mac OS' => '(Mac_PowerPC)|(Macintosh)',
'QNX' => 'QNX',
'BeOS' => 'BeOS',
'OS/2' => 'OS/2',
'Search Bot'=>'(nuhk)|(Googlebot)|(Yammybot)|(Openbot)|(Slurp)|(MSNBot)|(Ask Jeeves/Teoma)|(ia_archiver)'
Comencé a escribir un script para leer el sistema operativo y la versión del navegador que se puede probar en Fiddle . Siéntase libre de usar y extender.
fuente
fuente
La solución de @Ludwig fue brillante. Un par de correcciones (que no tenían que ver con el sistema operativo, y no pude colocar un comentario en su publicación original porque es demasiado largo):
Aquí están:
fuente
JavaScript tiene acceso a
window.navigator.platform
- una cadena que representa la plataforma del navegador: https://developer.mozilla.org/en/DOM/window.navigator.platformÚselo para extraer los detalles que necesita (y puede). Tenga en cuenta que no hay garantías de que el cliente realmente use esa plataforma, ya que esto puede modificarse fácilmente de muchas maneras.
fuente
platform.js parece una buena biblioteca de archivos para hacer esto.
Ejemplo de uso:
fuente
Puede usar esta
javascript
función para verificar el sistema operativo de los usuarios simplementefuente
Puede encontrar el nombre y la versión del sistema operativo en el
navigator
objeto, como han respondido otros. El lugar estándar entre navegadores para encontrar esta información es en lanavigator.userAgent
propiedad. Sin embargo, las cadenas de agente de usuario varían ampliamente según el sistema operativo y el navegador.Entonces, creé un script para encapsular esta lógica e informar sobre los sistemas operativos y navegadores más comunes de una manera familiar, como http://www.whatsmybrowser.org .
Abrí el script de fuente abierta y lo subí a github, https://github.com/keithws/browser-report . ¡Las solicitudes de extracción son bienvenidas!
fuente
He creado una biblioteca para analizar cadenas de Agente de usuario llamada Voodoo . Pero tenga en cuenta que esto no debería debe usarse en lugar de la detección de características.
Lo que hace Voodoo es analizar la cadena userAgent, que se encuentra en el objeto Navigator (window.navigator). No todos los navegadores pasan una cadena de UserAgent confiable, por lo que, aunque es la forma normal de hacerlo, no siempre se puede confiar en el UserAgent.
fuente
Me tenedor de código y quite @Ludwig necesidad de
swfobject
.Solo uso el código swfobject para detectar la versión flash.
fuente
Use detectOS.js :
fuente
No puedo comentar sobre la respuesta de @Ian Ippolito (porque lo habría hecho si tuviera el representante), pero de acuerdo con el documento vinculado a su comentario, estoy bastante seguro de que puedes encontrar la versión de Chrome para iOS. https://developer.chrome.com/multidevice/user-agent?hl=ja enumera el UA como: Mozilla / 5.0 (iPhone; CPU iPhone OS 10_3 como Mac OS X) AppleWebKit / 602.1.50 (KHTML, como Gecko) CriOS / 56.0.2924.75 Mobile / 14E5239e Safari / 602.1
Entonces esto debería funcionar:
No he podido probarlo (de lo contrario hubiera mejorado su respuesta) para asegurarme de que mi iPad está en casa y estoy en el trabajo, pero pensé que lo pondría allí.
fuente
Hola, para una solución rápida, puede considerar la siguiente biblioteca: UAPARSER - https://www.npmjs.com/package/ua-parser-js
ejemplo:
También puede instalar la biblioteca a través de npm e importarla así:
la biblioteca es un analizador de cadenas de agente de usuario basado en JS (window.navigator.userAgent es el agente de usuario en el navegador), por lo que puede obtener también otros detalles como navegador, dispositivo, motores, etc. y puede funcionar con el nodo js también.
si necesita escribir para la biblioteca: https://www.npmjs.com/package/@types/ua-parser-js
fuente