Обнаружение версии браузера, ядра, системы и мобильного терминала
Кода -копия выглядит следующим образом:
/**
* Проверьте версию браузера
* @authors k
* @Date 2014-04-11 14:48:39
* @version 1
*/
/**
* Обнаружение информации браузера с помощью навигатора пользователь
* @return Object Info Browser
*/
var browser = (function () {
var userAgent = navigator.useragent,
ua = userAgent.tolowerCase (),
browserlist = {
msie: /(?
Firefox: /firefox//(n
chrome: /chrome///щен/w.t+)/i,
Safari: /version//,, мозучке
Opera: /(?:OPR//Tapera.opera.+Version///)(X/W.Y+)/i
},
kernels = {
Msie: /( Компатибируем ;/smsie/s|trident//) °/W.Y+/i,
Камино: /Камин /я,
Khtml: /khtml /i,
Presto: /presto//st
Gecko: /gecko//ts/w.t+/i,
Webkit:/applewebkit//ts/w.ty+/i
},
браузер = {
ядро: 'unknow',
Версия: 'Unknow'
}
// Обнаружение браузера
для (var i в браузерлисте) {
var matchs = ua.match (browserlist [i]);
Браузер [i] = матчи? Верно: Неверно;
if (соответствует) {
Browser.version = Matchs [1];
}
}
// Двигатель обнаружения
для (var i в ядрах) {
var matchs = ua.match (ядра [i]);
if (соответствует) {
browser.kernel = matchs [0];
}
}
// система
var os = ua.match (/(windows/snt/s | mac/sos/sx/s | android/s | iPad.*/sos/s | iPhone/ss/s) ([/d ._-]+)/i);
Browser.os = OS! == NULL? OS [0]: false;
// это мобильный терминал
browser.mobile = ua.match (/mobile/i)! == null? Верно: Неверно;
вернуть браузер;
} ());