javascript - 如何检测浏览器的版本?

标签 javascript browser version browser-detection

我一直在寻找可以让我检测访问该网站的用户是否使用 Firefox 3 或 4 的代码。我发现的只是检测浏览器类型而不是版本的代码。

如何检测这样的浏览器版本?

最佳答案

您可以查看浏览器说什么,并使用该信息记录或测试多个浏览器。

navigator.sayswho= (function(){
    var ua= navigator.userAgent;
    var tem; 
    var M= ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || [];
    if(/trident/i.test(M[1])){
        tem=  /\brv[ :]+(\d+)/g.exec(ua) || [];
        return 'IE '+(tem[1] || '');
    }
    if(M[1]=== 'Chrome'){
        tem= ua.match(/\b(OPR|Edge)\/(\d+)/);
        if(tem!= null) return tem.slice(1).join(' ').replace('OPR', 'Opera');
    }
    M= M[2]? [M[1], M[2]]: [navigator.appName, navigator.appVersion, '-?'];
    if((tem= ua.match(/version\/(\d+)/i))!= null) M.splice(1, 1, tem[1]);
    return M.join(' ');
})();

console.log(navigator.sayswho); // outputs: `Chrome 62`

关于javascript - 如何检测浏览器的版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5916900/

相关文章:

javascript - 在图像 R 上绘制矩形 Shiny

css - IE8 忽略框大小

java - 删除IntelliJ中的 "Project SDK"配置

javascript - 为什么 event.preventDefault() 无法取消 Angular js 中的 $routeChangeStart 事件

javascript - 挪威语键盘布局 : AltGr

javascript - 等待组件在自定义 svelte 指令中准备就绪

http - DNS 查找和 HTTP 代理

Java版本控制

ios - 如何找出iOS版本

javascript - 根据预定义数组对数组(结果集)进行排序