js判断浏览器版本及种类

/**
 *@Date:2021/01/08
 *@Description:获取判断浏览器版本信息
 *@return {object} or @return {number}
 */
function browserVersion () {
    var userAgent = navigator.userAgent // 取得浏览器的userAgent字符串
    var isIE = userAgent.indexOf('compatible') > -1 && userAgent.indexOf('MSIE') > -1 // 判断是否IE<11浏览器
    var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf('rv:11.0') > -1
    var isEdge = userAgent.indexOf('Edge') > -1 && !isIE // Edge浏览器
    var isFirefox = userAgent.indexOf('Firefox') > -1 // Firefox浏览器
    var isOpera = userAgent.indexOf('Opera') > -1 || userAgent.indexOf('OPR') > -1 // Opera浏览器
    var isChrome = userAgent.indexOf('Chrome') > -1 && userAgent.indexOf('Safari') > -1 && userAgent.indexOf('Edge') === -1 && userAgent.indexOf('OPR') === -1 // Chrome浏览器
    var isSafari = userAgent.indexOf('Safari') > -1 && userAgent.indexOf('Chrome') === -1 && userAgent.indexOf('Edge') === -1 && userAgent.indexOf('OPR') === -1 // Safari浏览器
    if (isIE) {
        var reIE = new RegExp('MSIE (\\d+\\.\\d+);')
        reIE.test(userAgent)
        var fIEVersion = parseFloat(RegExp['$1'])
        if (fIEVersion === 7) {
            return { type: 'IE', version: 7 }
        } else if (fIEVersion === 8) {
            return { type: 'IE', version: 8 }
        } else if (fIEVersion === 9) {
            return { type: 'IE', version: 9 }
        } else if (fIEVersion === 10) {
            return { type: 'IE', version: 10 }
        } else {
            return { type: 'IE', version: 6 } // IE版本<7时
        }
    } else if (isIE11) {
        return { type: 'IE', version: 11 }
    } else if (isEdge) {
        var edgeVersion = userAgent.split('Edge/')[1].split('.')[0]
        return { type: 'Edge', version: edgeVersion }
    } else if (isFirefox) {
        var firefoxVersion = userAgent.split('Firefox/')[1].split('.')[0]
        return { type: 'Firefox', version: firefoxVersion }
    } else if (isOpera) {
        var operaVersion = userAgent.split('OPR/')[1].split('.')[0]
        return { type: 'Opera', version: operaVersion }
    } else if (isChrome) {
        var chromeVersion = userAgent.split('Chrome/')[1].split('.')[0]
        return { type: 'Chrome', version: chromeVersion }
    } else if (isSafari) {
        var safariVersion = userAgent.split('Safari/')[1].split('.')[0]
        return { type: 'Safari', version: safariVersion }
    } else {
        return -1 // 未判断出
    }
}

var browserVersionInfo = browserVersion()
// console.log(browserVersionInfo, '浏览器版本判断结果')
// 判断浏览器版本做出相应处理
if (browserVersionInfo !== -1) {
    if (browserVersionInfo.type === 'IE' && browserVersionInfo.version < 11) {
        window.location = window.location.protocol + '//' + window.location.host + '/noSupport.html'
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值