为了账号安全,请及时绑定邮箱和手机立即绑定

用navigatior.userAgent检测浏览器类型怎么看?

用navigatior.userAgent检测浏览器类型怎么看?

用此方法检测谷歌浏览器时,发现返回的字符串包含了mozilla,chrome,Safari。 到底这个谷歌浏览器是谷歌浏览器还是火狐浏览器还是Safari浏览器?
查看完整描述

1 回答

已采纳
?
千秋此意

TA贡献158条经验 获得超187个赞

// 关于你提到的那点疑问, 大致可以这样区分:
// Chrome的UA里没有"Version"
// Safari的UA里没有"Chrome"
// 下面这个方法只能做简单的浏览器检测,根据自己需要改吧

function getBrowser() {
    var  ua  =  navigator.userAgent;
    return (/Opera\/(\S+)/.test(ua) || window.opera) && 'Opera'
        || (/AppleWebKit\/(\S+)/.test(ua) && /Version\/(\S+).*Safari/.test(ua)) && 'Safari'
        || (/AppleWebKit\/(\S+)/.test(ua) && /Chrome\/(\S+)/.test(ua)) && 'Chrome'
        || (/rv:([^\)]+)\) Gecko\/\d{8}/.test(ua) && /Firefox\/(\S+)/.test(ua)) && 'Firefox'
        || /MSIE ([^;]+)/.test(ua) && 'IE'
        || 'Unknown';
}

var browser = getBrowser();
console.log(browser);

查看完整回答
反对 回复 2017-11-20
  • qq_杀意隆_0
    qq_杀意隆_0
    那一款浏览器为何要包含那么多其他的浏览器的名字?
  • 千秋此意
    千秋此意
    建议你去看下《JavaScript高级程序设计》- 客户端检测 - 用户代理检测(第九章 第三小节)
  • 1 回答
  • 0 关注
  • 1381 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信