一尘不染

JavaScript如何检测浏览器的版本?

javascript

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

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


阅读 411

收藏
2020-04-25

共1个答案

一尘不染

您可以看到浏览器说的内容,并将该信息用于记录或测试多个浏览器。

navigator.sayswho= (function(){

    var ua= navigator.userAgent, tem,

    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`
2020-04-25