我的一位客户的要求之一是向使用旧版本 Firefox、Chrome、IE 或 Safari 的用户显示消息。最后两个很容易(IE 9+ 和 Safari 5+)。但是对于 Firefox 和 Chrome,要求是该站点支持每个浏览器的当前和以前的版本。获取客户端浏览器和版本非常简单,但我需要知道每个浏览器的最新版本是什么。有没有办法做到这一点?
5 回答
好吧,从技术上讲,您所需要的只是一个跟踪每个浏览器的最新版本的地方(最好是使用 Web 服务)。
我能找到一个快速的谷歌搜索:http ://www.webdevelopersnotes.com/articles/latest-browser-versions.php
它不是 Web 服务,但您可以简单地解析该 HTML 并获取每个浏览器的最新版本。或者,您可以自己跟踪并在数据库中手动更新此信息。
当涉及到版本执行时,您应该只需要担心 IE。当然,例外情况是,如果您需要以前版本的 Chrome/Firefox 中不可用的特定 API,但在这种情况下,您将查看并执行 API,而不是浏览器版本。除此之外,如果 Chrome/Firefox 没有 API,很可能即使是最前沿的 IE 版本也不会,所以这一点没有实际意义。事实是 Firefox 和 Chrome,以及部分 Safari,在浏览器托管功能方面远远领先于 IE,试图强制执行前者的特定版本可能会浪费大量时间和精力,而不会产生任何实质性结果。
我能找到的最好的就是这个。它有一个导出选项,允许导出 JSON、XML...
我强烈建议您不要检查浏览器版本,而是尝试使用Modernizr进行功能检测。
您客户网站的哪些功能取决于每个浏览器的特定版本?如果您使用 Modernizr,您可以对某个功能进行检查,例如一些视频内容,如果当前浏览器不支持该功能,则向用户显示一条消息,建议他们升级浏览器。
通过 Javascript 检测浏览器版本充其量是非常不稳定的。
我说您需要这种验证的唯一原因是您的网页具有仅适用于最新浏览器的功能。我建议不要依赖版本号,而是为您的网站学习 Modernizr.js。
它可以单独检测特定的 html5/css3 功能。