【发布时间】:2014-09-15 13:35:35
【问题描述】:
我需要告诉用户为我的网站使用的浏览器。 (编辑:用户需要添加书签,这在标准的“互联网”浏览器上是不可能的。我需要知道向他们显示什么消息。)
编辑:我不需要能够检测任何类型的浏览器。具体来说,在这种情况下,我需要能够检测浏览器是否真的是 Google Chrome 浏览器。
对于至少一种智能设备,我无法区分普通的“互联网”浏览器和 Chrome;两者都包含“Chrome”一词。
三星 Galaxy S5:
股票浏览器用户代理:
Mozilla/5.0(Linux;Android 4.4.2;en-us;SAMSUNG-SM-G900A Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/1.6 Chrome/28.0.1500.94 Mobile Safari/537.36
Chrome 用户代理:
Mozilla/5.0(Linux;Android 4.4.2;SAMSUNG-SM-G900A Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.128 Mobile Safari/537.36
“Version/X.x”不同,但总是这样吗?
编辑:我确实已经按照 cmets 中的建议检查了以前的答案。他们假设非 Chrome 浏览器不包含 Chrome 一词。
【问题讨论】:
-
尝试检测特定类型的浏览器通常是个坏主意。检测对您的代码真正重要的事物(例如某些功能的存在或缺乏(称为功能检测))并根据存在的功能而不是您认为的浏览器来确定您的逻辑要好得多。
-
那么这两种浏览器有什么不同的功能呢?我需要知道用户是否可以安装书签,但这不是我可以检查的。
-
@trainoasis 在我问自己之前,我会检查以前的答案。你提到的那些没有回答这个问题。 (有时人们会很快将一个问题标记为重复而不进行实际检查。这会损害新问题被回答的机会。)
-
@jfriend00 IRL,其中许多 JS“功能”在移动浏览器上默默地失败了。 ibm.com/developerworks/library/wa-ioshtml5
标签: javascript android user-agent