JavaScript es el idioma principal del desarrollo frontal. En general, hay dos formas de juzgar los tipos de navegadores en JavaScript. Este artículo analiza las características del usuario respectivo del navegador y ofrece un método de juicio:
Serie de navegador del sistema operativo de Windows:
IE Serie de navegador:
Características: Todos comienzan con "Mozilla/" y X en "MSIE X.0;
Método de juicio: solo puede buscar en la cadena "MSIE X.0;
Firefox para ventanas:
Características: Comience con "Mozilla/X.0", incluyendo "Windows NT", "Gecko/" y "Firefox/";
Método de juicio: para un juicio aproximado, solo puede recuperar las cuerdas "Firefox/" y "Windows NT". Firefox/";
Chrome para Windows:
Características: Comience con "Mozilla/X.0", incluyendo "Windows NT", "Chrome/", y también incluya "AppleWebkit/", "Safari/";
Método del juicio: Juega más o menos, solo puede buscar "Windows NT" y "Chrome/" Strings, y estrictamente juzgar, puede buscar "Mozilla/", "Windows NT", "AppleWebkit/", "Safari/", "Chrome /"5 cadenas;
Opera para Windows:
Características: Comience con "Opera/" y contiene "Windows NT", "Presto/" cadenas;
Método de juicio: juzga aproximadamente solo en busca de "Windows NT" y "Opera/", y juzga estrictamente a buscar "Opera/", "Windows NT" y "Presto/" al mismo tiempo;
Safari para ventanas:
Características: Comience con "Mozilla/" y contenga "Windows NT", "AppleWebkit/", "Safari/";
Método de juicio: Juega aproximadamente, puede buscar "Windows NT", "Safari/" y no "Chrome/". /"Pero" Chrome/"no está incluido;
Resumen: el usuario del navegador en el sistema operativo Windows contiene una cadena "Windows NT" para representar el sistema operativo Windows.
Serie de navegador de plataforma de iPhone:
iPhone viene con safari:
Características: Comenzando con "Mozilla/", contiene la cadena "iPhone" y también contiene la cadena "móvil/", "safari/";
Método de juicio: Juega más o menos solo en busca de cuerdas "iPhone" y "safari/".
Opera Mobile para iPhone:
Características: Comenzando con "Opera/", contiene la cadena "iPhone" y también contiene la cadena "Opera Mini/", "Presto/";
Método de juicio: Juega más o menos solo busca las cuerdas "iPhone" y "Opera/".
Resumen: el usuario del navegador en teléfonos iPhone contiene la cadena "iPhone"
Serie de navegador de plataforma Android:
Android viene con un navegador (algunas personas dicen que es solo Chrome, pero Google no hace ninguna declaración y está desarrollando un Chrome al teléfono que se ejecuta en Android):
Características: Comenzando con "Mozilla/", contiene cadenas "Android" y "Linux", y también contiene "AppleWebKit/", "Safari/" Mobile Safari/";
Método del juicio: Debido a que no sé si habrá un safari independiente en Android en el futuro (supongo que no lo hará), se recomienda hacer juicios estrictos directamente y buscar "Mozilla/", "Android", ",", Linux "," AppleWebkit/"," Mobile Safari/"Five Strings
Opera Mobile para Android:
Características: Comenzando con "Opera/", contiene cadenas "Android" y "Linux", y también contiene "Opera Mobi/", "Presto/" cadenas;
Método del juicio: Juez más o menos solo busca "Android" y "Opera/", y los jueces estrictamente deben incluir tanto "ópera/", "Android", "Linux", "Opera Mobi/", "Presto/" Five Strings
Firefox para Android:
Características: comenzando con "Mozilla/", que contiene cadenas "Android" y "Linux", y también contiene "Firefox/", "Gecko/", "Fennec/" cadenas;
Método del juicio: Judge más o menos solo busca "Android" y "Firefox/", y los jueces estrictamente deben incluir tanto "Mozilla/", "Android", "Linux", "Firefox/", "Gecko/", "Fennec/" Six Six Una cuerda
Resumen: el navegador UserAgent en la plataforma Android contiene cadenas "Android" y "Linux"
El análisis anterior de los navegadores principales de las tres plataformas principales de Windows, iPhone y Android básicamente ha terminado. Sea similar a la plataforma de iPhone, por lo que por el momento no haré el análisis por ahora, porque no tengo tantos dispositivos y sistemas operativos para probar, espero poder compensarlo en el futuro.
Los requisitos actuales de desarrollo del producto del sitio web son diferentes de antes, porque no solo necesita cumplir con la navegación de la computadora, sino que también necesita cumplir con los teléfonos inteligentes de los usuarios (aquí solo nos referimos a teléfonos inteligentes reales como iPhone, Android, Windows Phone y Niches como BlackBerry y Palm, el sistema semiinteligente no se considera por el momento. Juez el equipo de usuario basado en el usuario del navegador.
1. Si necesita juzgar el sistema operativo, el método es relativamente simple.
Contiene "Windows NT": es obvio que el número de versión después de NT puede determinar la versión del sistema operativo;
Sistemas que contienen "Mac": Mac OS X de Apple u otros kernels de Mac OS;
Contiene "iPhone": exclusivo de los teléfonos de iPhone de Apple, y también debe contener "Mac" en general;
Contiene "iPad": la tableta de iPad de Apple (la información muestra que el navegador iPad UserAgent también contiene "Mac", "iPhone", "iPad");
Contiene "Linux": sistema operativo Linux u otro sistema operativo con Linux como kernel;
Contiene "Android": el sistema operativo Android de Google puede ser un teléfono inteligente o una versión de Android de la tableta.
Contiene uno de los tres: sistema UNIX, pero de hecho, los problemas de experiencia del usuario de este sistema son casi innecesarios de considerar;
Linux que contiene "Ubuntu": versión personalizada de Ubuntu
...
También ha visto que juzgar el sistema operativo y su versión no siempre es útil, pero siempre hay lugares que se pueden usar, como el desarrollo de páginas que se dirigen específicamente a la resolución de pantalla de dispositivos como iPhone, iPad y Android, etc.
2. No es difícil juzgar el núcleo del navegador.
Es decir, el kernel (trident) (es decir, Mac, IES4Linux, etc., solo considere Windows): comience con "Mozilla/" y contiene cadenas "Windows NT" y "MSIE";
Firefox (Gecko) Kernel: Comience con "Mozilla/", contiene las cadenas "Firefox/" y "Gecko/", entre las cuales la versión de Android también tiene la cadena "Fennec/";
Ópera () kernel: comienza con "Opera/" y contiene la cadena "Presto/", la versión para iPhone también tiene "Opera Mini/", y la versión de Android también tiene "Opera Mobi/";
WebKit Kernel: Comience con "Mozilla/", contiene las cuerdas de "AppleWebkit/" y "Safari/", y el navegador Chrome con "Chrome/" es el que no tiene Safari u otros;
Lo anterior es el núcleo del navegador principal
Sin embargo, el núcleo del navegador es el problema clave para resolver la compatibilidad. , por supuesto, el mismo kernel representa los resultados en diferentes dispositivos, como teléfonos inteligentes y computadoras, y esto también debe prestarse atención.
3. Ejemplos de la aplicación real del navegador de uso:
Los diferentes núcleos de los navegadores tienen diferentes efectos de renderizado en las páginas.
Los usuarios no solo acceden a los sitios web a través de las computadoras. La tableta está bien, la pantalla tiene una resolución grande y alta. ¿Tienes razón? Después de todo, es muy incómodo ver las páginas web a través del zoom local y el arrastre. Acelerar el acceso;
Haga análisis de tráfico de visitantes, optimice y diseñe su propio sitio web juzgando el tipo de navegador de clientes y registrando el número de clientes para mejorar la experiencia de su cliente por separado.
La copia del código es la siguiente:
<script type = "text/javaScript">
var sys = {};
var ua = navigator.useragent.tolowercase ();
var s;
(S = UA.Match (/MSIE ([/d.font>+)/))?
(S = UA.Match (/Firefox // ([/d.]+)/))?
(S = UA.Match (/Chrome // ([/d.]+)/))?
(S = UA.Match (/Opera. ([/d.]+)/))?
(S = UA.Match (/Versión // ([/d.]+).*Safari/))?
// Las siguientes pruebas
if (sys.ie) document.write ('es decir:' + sys.ie);
if (sys.firefox) document.write ('Firefox:' + sys.firefox);
if (sys.chrome) document.write ('Chrome:' + sys.chrome);
if (sys.opora) document.write ('ópera:' + sys.opora);
if (sys.safari) document.write ('safari:' + sys.safari);
</script>
o:
Métodos para detectar navegadores en el código fuente del editor de código abierto de KindEditor:
Ke = {};
Ke.browser = (function () {
var ua = navigator.useragent.tolowercase ();
devolver {
Versión: UA.Match (/(MSIE | Firefox | WebKit | Opera) [//:/s] (/d+)/)?
Es decir: (ua.indexof ("msie")> -1 && ua.indexof ("ópera") == -1),
Gecko: (ua.indexof ("gecko")> -1 && ua.indexof ("khtml") == -1),
WebKit: (ua.indexof ("AppleWebkit")> -1),
Opera: (ua.indexof ("ópera")> -1)
};
}) ();