SVG Animation は使わないことにしようと思いました
SVG 勧告に書かれていることは、既存の実装で裏をとるまでは価値があるとは思ってはいけないと思っています。
既存の SVG 実装の範囲内で使い物になる SVG の機能についてのみ、SVG 勧告の記述を見る価値があると思っています。
既存の実装で動作しない規定は、単にブラウザ開発者による実装が遅れている規定というだけではなく、そもそも需要がなかったり実装が困難あるいは無意味な規定だったりする可能性があると思っています。
「19 Animation」など、魅力的ではあるものの明らかに怪しい臭いがするので、既存の実装で動くのか、調べてみました。
View this example as SVG (SVG-enabled browsers only)
http://www.w3.org/TR/SVG11/animate.html
と書かれて勧告からリンクされている、http://www.w3.org/TR/SVG11/images/animate/anim01.svg が勧告の意図通りに動いているかどうかを確認したところ、
- Safari3
- 勧告の意図通りには動作しない。'It's alive!' という文字列が遅れて表示される部分だけかろうじて Animation っぽい。
- Firefox2
- 勧告の意図通りには動作しない。'It's alive!' という文字列が表示されないという点で、Safari よりもさらに弱い実装であると言える。
- Opera9
- 勧告の意図通りに動作しているように見える*1。
という状況でした。一実装にしか実装されていない以上、SVG Animation を使うのは時期尚早だと判断しました。
SVG Animation が本来担うべき機能は、少なくとも当面は JavaScript で直接実装すべきだと思いました。
*1:ただ、Opera を引っ張り出してやっと見ることができた Animation の内容が、あまりにおざなりすぎる気がします。SVG Animation という規格に対する不信感を高めてくれます
*2:オリジナル:http://www.google.com/search?q=%E3%82%B0%E3%83%AD%E3%83%BC%E3%83%90%E3%83%AB%E5%A4%89%E6%95%B0%E3%81%AE%E3%82%AA%E3%82%AD%E3%83%86