Cómo utilizar el atributo userAgent de JavaScript para determinar el tipo de navegador
Para determinar el tipo de navegador, podemos utilizar el atributo userAgent del objeto Navigator proporcionado en JavaScript. Es el único atributo que puede obtener información como el tipo y la versión del navegador que ejecuta JavaScript. es simple y conveniente de usar, pero es fácil cometer errores si el navegador determina el orden incorrectamente, por lo que se debe tener cuidado.
Primero echemos un vistazo a la sintaxis básica del atributo userAgent
window.navigator.userAgent a través de esto, puede obtener la "cadena" que describe la información del navegador como retorno; valor.
¡El punto es llevar la información como una cadena hasta el final!
Por lo tanto, es necesario extraer el tipo y la versión del navegador en la información de caracteres utilizando métodos como indexOf().
¿Cómo obtener información del navegador?
¡Creemos un programa que realmente obtenga el tipo de navegador!
Primero obtenga la información del navegador del atributo userAgent.
//Método ①
var agente = window.navigator.userAgent;
//Método ②
var agente = ventana. navigator.userAgent.toLowerCase(); El método ① usa el atributo userAgent como de costumbre, pero ② finalmente ejecuta toLowerCase().
En realidad, la información del navegador que obtienes es una cadena mixta de letras mayúsculas y minúsculas, por lo que es más fácil saber si básicamente está todo en minúsculas o mayúsculas.
Entonces, en términos generales, ¡usaré el método ② para escribirlo!
var agente = window.navigator.userAgent.toLowerCase();
var resultado = agent.indexOf('chrome') gt;
console.log(resultado); en este ejemplo, indexOf() se utiliza para confirmar si existe el texto "chrome" obtenido de la información del navegador.
Si no, devuelve "-1", si está presente, devuelve "posición del carácter".
Por lo tanto, a través de la comparación de "gt; -1", se puede obtener "verdadero/falso", por lo que se puede realizar el juicio.
Juicio del navegador
Actualmente, existen varios navegadores, como "IE", "Chrome", "Safari" y "Firefox" como navegadores convencionales
¡Veamos cómo se juzga cada navegador!
En términos generales, cada nombre de navegador se juzga básicamente en orden a través de la declaración IF.
var agente = window.navigator.userAgent.toLowerCase();
if(agent.indexOf('msie') gt; -1) {
console.log('navegador IE');
} else if(agent.indexOf('edge') gt; -1) {
console.log('navegador Edge ');
} else if(agent.indexOf('chrome') gt; -1) {
console.log('navegador Chrome');
} else if(agent.indexOf('safari') gt; -1) {
console.log('navegador Safari');
} else if (agent. indexOf('firefox') gt; -1) {
console.log('navegador Firefox');
} else {
console.log( 'Otros navegadores');
} En este ejemplo, userAgent se utiliza para obtener información del navegador e indexOf() determina el nombre de cada navegador en orden.
Cubrimos un poco al principio, ¡pero el orden de las comparaciones es importante!
En realidad, cuando inspeccionas el navegador Edge usando el atributo userAgent, contiene los caracteres "chrome" y "safari".
Además, comprueba que Chrome contenga la palabra "safari".
De esta manera, algunos casos contendrán nombres diferentes al navegador original, por lo que es necesario comparar primero los navegadores a investigar.
Básicamente, ¡al menos garanticemos el orden de "Edge" → "Chrome" → "Safari"!