webanimations ポリフィルをロードする必要がないように、ブラウザーが webanimation API をサポートしているかどうかを確認する方法はありますか?
github のドキュメントでは、Element.animate と Playback Control について説明しています。要素の $0.animate を確認できますが、再生コントロールを確認する方法がわかりません。これは、ポリフィルが必要かどうかを確認する正確な方法ですか?
webanimations ポリフィルをロードする必要がないように、ブラウザーが webanimation API をサポートしているかどうかを確認する方法はありますか?
github のドキュメントでは、Element.animate と Playback Control について説明しています。要素の $0.animate を確認できますが、再生コントロールを確認する方法がわかりません。これは、ポリフィルが必要かどうかを確認する正確な方法ですか?
@brianskold 応答に追加するには、次を使用しました。
if ('animate' in elementToAnimate) {
// do something
} else {
// fallback code
}
これは Chrome と Firefox で動作し、サポートされていない場合はフォールバックします!
が存在する場合Element.animate
、再生コントロールも存在すると想定するのが妥当だと思います。
Chrome は最初Element.animate
に Chrome 36 でサポートを出荷しました。これは、長い間出荷されてきた Chrome 39 (現在の Chrome は 51) で再生コントロールを追加しました。
Element.animate
Firefox は、Firefox 48 (現在ベータ版) で再生コントロールを含めて出荷されます。
Safari も Edgeも、再生コントロールElement.animate
なしで出荷されることはないと思います。
finished
ただし、 promise、属性、または追加アニメーションなど、仕様の一部であり、まだどのブラウザーにも搭載されていない他の機能がありeffect
ます (ただし、これらの機能の一部は Firefox Nightly/DevEdition および Chrome Canary で利用できます)。これらの機能のいずれかに依存している場合でも、ポリフィルが必要になる場合があります。
また、ポリフィルは利用可能な場合はネイティブ実装にフォールバックする必要がありますが、ポリフィルのダウンロードを完全に回避しようとしていると思いますか?