JS判断系统和浏览器
var ua = (navigator && navigator.userAgent || '').toLowerCase(),
app_version = (navigator && navigator.appVersion || '').toLowerCase(),
vendor = (navigator && navigator.vendor || '').toLowerCase();
var is_android_phone = /android/.test(ua) && /mobile/.test(ua),
is_android_tablet = /android/.test(ua) && !/mobile/.test(ua),
is_ipad = /ipad/.test(ua),
is_iphone = /iphone os|iph os/.test(ua),
is_ipod = /ipod/.test(ua),
is_windows_phone = /win/.test(app_version) && /phone/.test(ua),
is_windows_tablet = /win/.test(app_version) && !/phone/.test(ua) && /touch/.test(ua),
is_linux_pc = /linux/.test(app_version),
is_windows_pc = /win/.test(app_version) && !is_windows_phone && !is_windows_tablet,
is_mac_pc = /mac/.test(app_version);
var is_edge = /edge/.test(ua),
is_firefox = /firefox|fxios/.test(ua),
is_ie = /trident|msie/.test(ua),
is_opera = /opera|opr/.test(ua),
is_sogou = /metasr|sogoumse|sogoumobilebrowser/.test(ua),
is_qq = /qqbrowser/.test(ua),
is_baidu = /bidubrowser|baidu/.test(ua),
is_aoyou = /maxthon|mxbrowser/.test(ua),
is_world = /theworld/.test(ua),
is_liebao = /lbbrowser|liebao/.test(ua),
is_uc = /ucbrowser/.test(ua),
is_chrome = /google inc/.test(vendor) && /chrome|crios/.test(ua) && !is_opera,
is_safari = /version\/(\d+).+?safari/.test(ua),
is_other = true;
var system_name = '',
browser_name = '',
arr_is_system = [is_android_phone, is_android_tablet, is_ipad, is_iphone, is_ipod, is_windows_phone, is_windows_tablet, is_linux_pc, is_windows_pc, is_mac_pc],
arr_system_name = ['android-phone', 'android-tablet', 'ios-ipad', 'ios-iphone', 'ios-ipod', 'windows-phone', 'windows-tablet', 'linux-pc', 'windows-pc', 'mac-pc'],
arr_is_browser = [is_edge, is_firefox, is_ie, is_opera, is_sogou, is_qq, is_baidu, is_aoyou, is_world, is_liebao, is_uc, is_chrome, is_safari, is_other],
arr_browser_name = ['edge', 'firefox', 'ie', 'opera', 'sogou', 'qq', 'baidu', 'aoyou', 'world', 'liebao', 'uc', 'chrome', 'safari', 'other'];
// 判断系统
for (var i = 0; i < arr_is_system.length; i++) {
if (arr_is_system[i] === true) {
system_name = arr_system_name[i];
break;
}
}
// 判断浏览器
for (var i = 0; i < arr_is_browser.length; i++) {
if (arr_is_browser[i] === true) {
browser_name = arr_browser_name[i];
break;
}
}