JavaScript est la langue principale du développement frontal. Il existe généralement deux façons de juger les types de navigateurs en JavaScript. Cet article analyse les caractéristiques de l'utilisateur respectif du navigateur et donne une méthode de jugement:
Série de navigateurs du système d'exploitation Windows:
IE Série de navigateurs:
Caractéristiques: Tout commence par "Mozilla /", et x dans "MSIE X.0;" représente sa version;
Méthode de jugement: vous pouvez uniquement rechercher la chaîne "MSIE X.0;" pour un jugement approximatif.
Firefox pour Windows:
Caractéristiques: Commencez par "Mozilla / X.0", y compris "Windows NT", "Gecko /" et "Firefox /";
Méthode de jugement: Pour un jugement approximatif, vous pouvez seulement récupérer les chaînes "Firefox /" et "Windows NT". Firefox / ";
Chrome pour Windows:
Caractéristiques: Commencez par "Mozilla / X.0", y compris "Windows NT", "Chrome /", et incluent également "AppleWebkit /", "Safari /";
Méthode de jugement: Juge à peu près, vous ne pouvez rechercher que "Windows NT" et "Chrome /" Strings, et juger strictement, vous pouvez rechercher "Mozilla /", "Windows NT", "Applewebkit /", "Safari /", "Chrome / "5 cordes;
Opéra pour Windows:
Caractéristiques: Commencez par "Opera /" et contient "Windows NT", "Presto /" Strings;
Méthode de jugement: Juge à peu près uniquement la recherche de "Windows NT" et "Opera /" Strings, et juge strictement la recherche de "Opera /", "Windows NT" et "Presto /" en même temps;
Safari pour Windows:
Caractéristiques: Commencez par "Mozilla /" et contiennent "Windows NT", "Applewebkit /", "Safari /";
Méthode de jugement: Juge à peu près, vous pouvez rechercher "Windows NT", "Safari /" et non "Chrome /". / "mais" Chrome / "n'est pas inclus;
Résumé: Le navigateur UserAgent sur le système d'exploitation Windows contient une chaîne "Windows NT" pour représenter le système d'exploitation Windows.
Série de navigateurs de la plate-forme iPhone:
L'iPhone est livré avec Safari:
Caractéristiques: à commencer par "Mozilla /", contient la chaîne "iPhone" et contient également le "mobile /", "safari /" String;
Méthode de jugement: Juge à peu près la recherche de "iPhone" et "Safari /" Strings.
Opera Mobile pour iPhone:
Caractéristiques: à commencer par "Opera /", contient la chaîne "iPhone" et contient également le "Opera Mini /", "Presto /" String;
Méthode de jugement: Juge à peu près uniquement les recherches pour "iPhone" et "Opera /" Strings.
Résumé: Le navigateur utilisateur sur les téléphones iPhone contient la chaîne "iPhone"
Série de navigateurs de plate-forme Android:
Android est livré avec un navigateur (certaines personnes disent que c'est juste Chrome, mais Google ne fait aucune déclaration et développe un chrome pour téléphoner à Android):
Caractéristiques: à commencer par "Mozilla /", contient "Android" et "Linux" Strings, et contient également "AppleWebkit /", "Mobile Safari /" Strings;
Méthode de jugement: parce que je ne sais pas s'il y aura un safari indépendant sur Android à l'avenir (je suppose que ce ne sera pas le cas), il est recommandé de porter des jugements stricts directement et de rechercher "Mozilla /", "Android", " Linux "," Applewebkit / "," Mobile Safari / "Five Strings
Opera Mobile pour Android:
Caractéristiques: à commencer par "Opera /", contient "Android" et "Linux" Strings, et contient également "Opera MOBI /", "Presto /" Strings;
Méthode de jugement: Juger à peu près uniquement les recherches "Android" et "Opera /", et les juges strictement doivent inclure à la fois "Opera /", "Android", "Linux", "Opera Mobi /", "Presto /" Five Strings
Firefox pour Android:
Caractéristiques: en commençant par "Mozilla /", contenant "Android" et "Linux" chaînes, et contenant également "Firefox /", "Gecko /", "Fennec /" Strings;
Méthode de jugement: Juge à peu près uniquement les recherches "Android" et "Firefox /", et les juges strictement doivent inclure à la fois "Mozilla /", "Android", "Linux", "Firefox /", "Gecko /", "Fennec /" Six Une chaîne
Résumé: Le navigateur UserAgent sur la plate-forme Android contient des chaînes "Android" et "Linux"
L'analyse ci-dessus des navigateurs grand public des trois principales plates-formes de Windows, iPhone et Android a essentiellement terminé. Soyez similaire à la plate-forme iPhone, donc pour le moment, je ne ferai pas l'analyse pour l'instant, car je n'ai pas autant d'appareils et de systèmes d'exploitation à tester, j'espère que je pourrai le compenser à l'avenir.
Les exigences actuelles de développement de produits du site Web sont différentes de celles avant, car elle doit non seulement répondre à la navigation de l'ordinateur, mais doit également répondre Comme BlackBerry et Palm, le système semi-intelligent n'est pas pris en compte pour le moment. Jugez l'équipement utilisateur en fonction du navigateur UserAgent.
1. Si vous devez juger le système d'exploitation, la méthode est relativement simple.
Contient "Windows NT": il est évident que le numéro de version après NT peut déterminer la version du système d'exploitation;
Systèmes contenant "Mac": Mac OS X d'Apple ou d'autres noyaux Mac OS;
Contient "iPhone": exclusif aux téléphones iPhone Apple, et devrait également contenir "Mac" en général;
Contient "iPad": tablette Apple iPad (les informations montrent que le navigateur iPad UserAgent contient également "Mac", "iPhone", "iPad");
Contient "Linux": système d'exploitation Linux ou autre système d'exploitation avec Linux comme noyau;
Contient "Android": le système d'exploitation Android de Google peut être un smartphone ou une version Android de la tablette.
Il contient l'un des trois: Unix System, mais en fait, les problèmes d'expérience utilisateur de ce système ne sont presque pas nécessaires à considérer;
Linux contenant "Ubuntu": version personnalisée Ubuntu
...
Vous avez également vu que juger le système d'exploitation et sa version n'est pas toujours utile, mais il existe toujours des endroits qui peuvent être utilisés, tels que le développement de pages qui ciblent spécifiquement la résolution d'écran de périphériques tels que l'iPhone, l'iPad et Android, etc.
2. Il n'est pas difficile de juger le noyau du navigateur.
IE (Trident) Kernel (c'est-à-dire pour Mac, IES4Linux, etc., considérez uniquement les fenêtres): Commencez par "Mozilla /" et contient "Windows NT" et "MSIE";
Noyau Firefox (Gecko): Commencez par "Mozilla /", contient les cordes "Firefox /" et "Gecko /", parmi lesquelles la version Android a également la chaîne "Fennec /";
Opera () Kernel: commence par "Opera /" et contient la chaîne "Presto /", la version iPhone a également "Opera Mini /", et la version Android a également "Opera Mobi /";
WEBKIT KERNEL: Commencez par "Mozilla /", contient les chaînes de "AppleWebkit /" et "Safari /", et le navigateur Chrome avec "Chrome /" est celui sans Safari ou autres;
Ce qui précède est le noyau du navigateur principal
Le noyau du navigateur est le problème clé de la résolution de la compatibilité. , bien sûr, le même noyau donne les résultats sur différents appareils tels que les smartphones et les ordinateurs, et cela doit également être fait attention.
3. Exemples de l'application réelle du navigateur usagent:
Différents noyaux de navigation ont des effets de rendu différents sur les pages.
Les utilisateurs n'accèdent pas seulement aux sites Web via des ordinateurs. La tablette est bonne, l'écran a une grande résolution. Avez-vous raison? Après tout, il est très inconfortable de regarder les pages Web via le zoom et la traînée locales. accélérer l'accès;
Faites l'analyse du trafic des visiteurs, optimisez et concevez votre propre site Web en jugeant le type de navigateur de clientèle et en enregistrant le nombre de clients pour améliorer séparément leur expérience client
La copie de code est la suivante:
<script type = "text / javascript">
var sys = {};
var ua = navigator.useragent.tolowercase ();
var s;
(s = ua.match (/ msie ([/d.
(s = ua.match (/ firefox // ([/ d.] +) /))?
(s = ua.match (/ chrome // ([/ d.] +) /))?
(s = ua.match (/ opéra. ([/ d.] +) /))?
(s = ua.match (/ version // ([/ d.] +). * safari /))?
// les tests suivants
if (sy.ie) document.write ('ie:' + sys.ie);
if (sys.firefox) document.write ('firefox:' + sys.firefox);
if (sys.chrome) document.write ('chrome:' + sys.chrome);
if (sy.opera) document.write ('opéra:' + sys.opera);
if (sys.safari) document.write ('safari:' + sys.safari);
</cript>
ou:
Méthodes pour détecter les navigateurs dans le code source de l'éditeur Open Source KindEditor:
Ke = {};
Ke.browser = (function () {
var ua = navigator.useragent.tolowercase ();
retour {
Version: ua.match (/ (msie | firefox | webkit | opera) [//: / s] (/ d +) /)?
Ie: (ua.indexof ("msie")> -1 && ua.indexof ("opéra") == -1),
Gecko: (ua.indexof ("gecko")> -1 && ua.indexof ("khtml") == -1),
Webkit: (ua.indexof ("Applewebkit")> -1),
Opéra: (ua.indexof ("opéra")> -1)
};
}) ();