正如标题所述,我有兴趣找到一种安全的、基于功能的(也就是说,不使用navigator.appName或navigator.appVersion)方法来检测Google Chrome。
我所说的基于特征是指,例如:
if(window.ActiveXObject) {
// internet explorer!
}
编辑:如前所述,这个问题没有多大意义(显然,如果你想实现一个功能,你需要测试它,如果你想检测特定浏览器,你需要检查用户代理),对不起,现在是凌晨5点;)让我这样表述:是否有任何javascript对象和/或功能是Chrome...
发布于 2008-09-17 15:45:52
isChrome = function() {
return Boolean(window.chrome);
}
发布于 2008-09-17 08:27:22
不完全是这个问题的答案...但是,如果你试图检测一个特定的浏览器品牌,那么功能检查的意义就有点迷失了。我非常怀疑任何其他浏览器都在使用Chrome userAgent字符串,所以如果你的问题是‘这个浏览器是Chrome吗’,你应该看看它。(顺便说一句,window.ActiveXObject不能保证IE,有其他浏览器的插件可以提供这个对象。这在某种程度上说明了我试图提出的观点。)
发布于 2009-02-24 17:58:41
对于所有标准的纳粹..。有时你可能想要使用出血“标准技术”,这些技术还不是标准的,但它们将是……例如css3特性。
这就是我找到这个页面的原因。
出于某些原因,Safari运行边界半径和box-shadow的组合很好,但chrome不能正确呈现该组合。因此,如果能找到一种方法来检测chrome,那就太好了,即使它是webkit来禁用组合的。
我遇到了数以百计的理由来检测特定的浏览器/版本,这通常会以放弃一个很酷的功能的想法而告终,因为我想做的事情没有得到大邪恶的支持……
但有时,有些功能太酷了,不能不使用它们,即使它们还没有标准化。
https://stackoverflow.com/questions/81099
复制相似问题