如何使用modernizr来检测画布支持

时间:2015-01-21 23:53:19

标签: modernizr

我想要做的就是在浏览器中检测Canvas支持。 Modernizr" Documentation"页面长达一千行,但似乎无法简单地解释特征检测(它的主要功能),而是对聚合填充进行咆哮。无论如何,这个:

Modernizr.canvas

只需返回undefined,而不是truefalse。如何让Modernizr实际告诉我浏览器中是否存在此功能?

1 个答案:

答案 0 :(得分:1)

当不支持某些内容时,Modernizr不会报告false。它只报告true,如果它们是,只是让不支持的属性未定义的事实充当假值。

例如,在我正在使用的Firefox中,Modernizr.canvas报告true。在旧的Android版本上,它会报告undefined,条件相当于false

if (Modernizr.canvas) {
  // do canvasy things
} else {
  // notify users that you need canvas, and their browser won't work
}

它为所有事情做到了这一点:如果支持,它将是真的。如果没有,它实际上不是Modernizr对象上的属性,因此调用将根据JavaScript规范使JS引擎报告undefined

相关问题