0

我有一个要求,我可以在页面上添加 Flash 和嵌入 HTML5应用程序。但是许多浏览器不支持 HTML5 应用程序。我想要做的是在运行时检查 HTML5 应用程序是否无法正常工作,然后显示 Flash File。但我不知道如何在运行时检查我的应用程序是否显示任何内容。我已经通过用户控件中的以下代码嵌入了 HTML5 代码:

<embed src='<fully qualified html5 app link>' height="<height>" width="<width>" />
4

1 回答 1

1

在运行时检查支持的功能的过程通常称为“功能检测”。Modernizr 是一个流行的 JavaScript 库,它提供了这样的“功能检测”: http: //modernizr.com/

例如,让我们从您建议的 HTML 开始,id为方便起见添加一个属性:

<embed id="fancy" height="<height>" width="<width>" />

例如,如果您想使用 HTML5 Canvas,但不得不在非 Canvas 浏览器中使用 Flash 替代方案,您可以执行以下操作(在 JavaScript 中,使用 Modernizr):

if (Modernizr.canvas) {
    // TODO: do whatever it is you want to do with Canvas
} else {
    // hook up your embed to the fallback Flash component
    document.getElementById('fancy').src = 'url/for/flash/component.swf';
}

HTML5 涵盖了大量的功能。所需的精确“检测”将根据您的要求而有所不同,但 Modernizr 使大部分工作变得非常简单。

于 2014-06-06T12:15:57.320 回答