Détecter la version du navigateur, le noyau, le système et s'il est mobile
/**
* détecter les informations du navigateur avec le navigateur userAgent
* @retourner les informations du navigateur d'objet
*/
var navigateur = (function(){
var userAgent = navigator.userAgent,
ua = userAgent.toLowerCase(),
browserList = {
msie : /(?:msies|trident .*rv:)([w.] )/i,
firefox : /Firefox/([w.] )/i,
chrome : /Chrome/([w.] )/i,
safari : /version/([w.] ).*Safari/i,
opera : /(?:OPR/|Opera. version/)([w.] )/i
},
noyaux = {
MSIE : /(compatible;smsies|Trident/)[w.] /i,
Camino : /Camino/i,
KHTML : /KHTML/i,
Presto : /Presto/[w.] /i,
Gecko : /Gecko/[w.] /i,
WebKit : /AppleWebKit/[w.] /i
},
navigateur = {
noyau : 'inconnu',
version : 'inconnu'
}
// Détecter le navigateur
for(var i in browserList){
var matches = ua.match(browserList[i]);
browser[i] = matches true : false;
if(matchs){
browser.version = matches[1];
}
}
// Moteur de détection
for(var i in kernels){
var matches = ua.match(kernels[i]);
if(matchs){
browser.kernel = matches [0];
}
}
// Système
var os = ua.match(/(WindowssNTs|MacsOSsXs|Androids|ipad.*soss|iphonesoss)([d._-] )/i);
browser.os = os!==null ? os[0] : faux;
// Que ce soit mobile
browser.mobile = ua.match(/Mobile/i)!==null ? true : false;
retourner le navigateur;
}());