1

我们正在开发一个仅支持“现代”浏览器(基本上是 IE9 及更高版本,以及具有大致相同数量的现代功能的任何其他浏览器)的 Web 应用程序。

我们的网络应用程序也可以在平板电脑和智能手机等移动设备上运行。

由于这是一个 Web 应用程序(与普通网站相反),我们可以接受一些用户被冷落到一些依赖现代功能的高级功能(即旧版浏览器)。

但是,我们希望至少显示一条消息让他们知道。

我们希望基本上维护两个列表:“支持的浏览器”和“不支持的浏览器”,以及第三个隐式列表“不支持的浏览器”(即,两者都不支持的浏览器)。

  • 如果浏览器在支持列表中,我们不会显示任何内容。
  • 如果它在“不支持”列表中,它将始终显示一条消息,上面写着“此浏览器不支持,请升级等等”。
  • 如果浏览器不在其中,它会显示一条消息(几乎可以永久关闭),上面写着“此浏览器未直接针对我们的网站进行测试,某些功能可能无法按预期运行。如果您遇到任何问题,请报告他们等等等等”。

建立这个和什么不是问题。但是,我想知道是否有一些站点/服务具有已经完成此类事情的 API,或者至少维护了我可以从中提取的浏览器列表。(如果没有,我只是计划使用手动测试结合来自“我可以使用...”和 Modernizr 等网站的信息)。

有任何想法吗?

4

2 回答 2

1

在网上浏览我看过的所有资源都说你根本不应该使用浏览器检测。最好测试您知道在您不支持的浏览器中不存在的功能,而不是尝试查看用户代理字符串。

http://www.quirksmode.org/js/support.html(如果您想知道查看您页面的浏览器是否支持您想在代码中使用的某些对象,您永远不应该使用浏览器检测。)

http://api.jquery.com/jQuery.support/(与其使用 $.browser 来检测当前用户代理并根据正在运行的浏览器更改页面呈现,不如使用特征检测。)

所以我认为你的现代化方法可能是最好的。

于 2013-04-12T18:45:23.037 回答
0

你不需要服务。

“支持”列表仅包含您实际测试的浏览器/设备/操作系统组合。

“不支持”列表包含那些您知道不起作用的浏览器/设备/操作系统组合(即,它们未通过您的测试)

正如您所提到的,“可能有效”列表是隐含的。

于 2013-04-12T18:43:34.657 回答