浏览器检测

标签 browser browser-detection

什么是检测用户浏览器的最佳/最简单/最准确的方法?

易于扩展和实现是一个加号。

使用的技术越少越好。

解决方案可以是服务器端,客户端或两者。结果最终应该最终在服务器上。

该解决方案可以与框架无关。

该解决方案仅用于报告目的。

最佳答案

在服务器上,您几乎仅限于浏览器提供的UserAgent字符串(充满问题,请阅读有关UserAgent string's history的信息)。

在客户端(即,使用Javascript)中,您有更多选择。但是最好的选择是实际上不必担心要确定它是哪个浏览器。只需检查以确保实际上要使用的任何功能都存在。

例如,您可能想使用setCapture,它仅由MSIE提供:

if (element.setCapture) element.setCapture()

无需弄清楚浏览器是什么,然后推断其功能,我们只是在使用它之前先查看它是否支持某些功能-谁知道将来哪些浏览器将支持什么功能,您真的要回头更新吗? Safari是否决定支持setCapture的脚本?

关于浏览器检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/100898/

相关文章:

c++ - 在 Qt 中使用 TCPServer 时浏览器连接重置

css - 如何在css中获取当前浏览器分辨率?

javascript - Webkit 和 Moz Transform,取决于浏览器

javascript - 在没有库的 JavaScript 中检查 IE 小于 9 的最佳方法

javascript - 在js中检测浏览器的最佳方法

.net - 将 UTF-16 编码的 gzip 内容响应返回给浏览器

javascript - 防止浏览器在刷新时自动滚动

php - opencart 检测移动设备并重定向到移动主题

javascript - 使用 jquery/Angularjs 清除浏览器缓存

javascript - 检测浏览器是否已经具有平滑滚动功能