当前位置: 首页 - 编程技术 - 文章正文

记录前端js获取浏览器信息与判断是否为移动端

xiaoqihv
执行下面方法将获取所有信息 const _browser = (function(){ let userAgent = navigator.userAgent, ua = userAgent.toLowerCase(), browserList = { msie : /(?:msie\s|trident.*rv:)([\w.]+)/i, firefox : /Firefox\/([\w.]+)/i, chrome : /Chrome\/([\w.]+)/i, safari : /version\/([\w.]+).*Safari/i, opera : /(?:OPR\/|Opera.+version\/)([\w.]+)/i }, kernels = { MSIE: /(compatible;\smsie\s|Trident\/)[\w.]+/i, Camino: /Camino/i, KHTML: /KHTML/i, Presto: /Presto\/[\w.]+/i, Gecko : /Gecko\/[\w.]+/i, WebKit: /AppleWebKit\/[\w.]+/i }, browser = { kernel : 'unknow', version : 'unknow' } // 检测浏览器 for(let i in browserList){ const matchs = ua.match(browserList[i]); // browser[i] = matchs ? true : false; if(matchs){ browser.version = matchs[1]; browser.browser = i } } // 检测引擎 for(let i in kernels){ const matchs = ua.match(kernels[i]); if(matchs){ browser.kernel = matchs[0]; } } // 系统 const os = ua.match(/(Windows\sNT\s|Mac\sOS\sX\s|Android\s|ipad.*\sos\s|iphone\sos\s)([\d._-]+)/i); browser.os = os!==null ? os[0] : false; // 是否移动端 browser.mobile = ua.match(/Mobile/i)!==null ? true : false; return browser;}());
文章地址:https://wenmayi.cn/post/576.html