2

我正在开发一个现有的应用程序,并遇到了以下代码行:

if (window.File && window.FileReader && window.FileList && window.Blob) {

               DoSomething();

            }

它似乎不起作用,尤其是在 IE 中。有没有更好的方法来检查 HTML5 支持?

4

3 回答 3

3

“检查 HTML5 支持”是一个过于雄心勃勃的目标。每个用户代理对 HTML 不同特性的支持程度不同,所以不是简单的包罗万象的“是的,这支持 HTML5”。

事实上,您引用的代码似乎做得很好 - 它测试了它需要的功能(显然是为了从操作系统读取 blob),而不是整个通用概念。

标准是做一些你引用的事情,只检查你想要的功能。如果该语句返回错误否定,您可能需要查看处理功能检测的支持库,例如modernizr

于 2013-07-29T14:55:58.593 回答
2

HTML5 只是一个流行词。浏览器支持不同的事物矩阵,我们将其归类为“HTML5”。您拥有的代码正在对浏览器是否支持文件和 blob API 进行“功能检测”。

于 2013-07-29T14:55:34.697 回答
0

虽然您通常无法检测到完整的 HTML5 支持,但有一个名为Modernizr的 javascript 库,它允许您通过功能检测 HTML5 和 CSS3 支持。

于 2013-07-29T14:54:25.927 回答