実際、3つすべての変種は、多かれ少なかれ異なる長所と短所で動作します。
1. SMIL
SMILは、あなたのSVGの内部で使いやすいですし、直接あなたのSVGオブジェクトの属性を変更することができます。しかし、Internet ExplorerやEdgeをサポートしたい/したい場合は、多くの運がありません(CanIUse参照)。
Chrome 45は、CSSアニメーションとウェブアニメーションのためにSMILを推奨していません。しかし、Chrome開発者は最近、その意図を停止しました(this StackOverflow answer参照)。
2. CSSアニメーション
これらはSVGsのアニメーションのための優れた選択肢です。私が見た限りでは、実装は通常非常に高速で滑らかです。特にMicrosoftブラウザの場合はBrowser support is betterです。だから私は本当にそれをお勧めします。
さらに多くのユーザーとのやり取りが必要な場合は、すぐにCSSアニメーションの制限を受けます。インタラクションは可能ですが、もっと必要な場合はJavaScriptが必要です。
3. jQueryのは本当にSVGsとの深刻な問題を抱えているが、それはSVGsをサポートするならば、それはになるので、私はそれがより良いjQueryの(両方のために、jQueryとソフトウェア)なしでやっていると思う
JavaScriptライブラリは、さらに大きくて遅い。ただし、既にに jQueryが含まれている場合は、要素を選択してからjQueryを使用せずにアニメーション化することができます。
他のライブラリはSVGに特化していて、本当にうまく機能します(私は自分でd3.jsをうまく使いました)。
勧告
あなたは、Microsoftのブラウザをサポートする必要がない場合は、SMILが特定のアニメーションを定義するための簡単かつコンパクトな方法することができます。
これらのブラウザが必要な場合は、CSSアニメーションを試してみることをおすすめします。しかし、あまりにも静的に見える場合は、JavaScriptライブラリの1つが役に立ちます。
それぞれについても、SVGを再描画する必要があります。 – MarmiK
「対話性」が意味するものが何であるかによって異なります。 –
マウスのホバーで地図上のシンボルのサイズを大きくする、マウスクリックでエリアや線要素(国や川)を拡大する、複数のレイヤーで表示/非表示を切り替える、ポップアップで追加情報を取得するなどの効果地図の特定の要素をクリックして、地図をパンしたり、ズームしたりして、メニューを表示します。 –