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 ライブラリの 1 つです: 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 に答える