Javascript&HTML5でFlashがiPhone上で動く!

おととい(1/20)にこんな記事を見つけました。
カヤックさんのブログです。iPhone で Flash がうごく!?
さすがカヤックさん。情報が早いですね〜

これを読んでいたら仕事中にも関わらず、感動しまくってしまいました。仕事中で騒げなかったので、ツイッターにつぶやきました。でも誰からも反応がなくて寂しかったので、同僚に教えました。あんまり感動してくれませんでしたが、一応感心してくれました。

と同時に、いままでずっと「FlashのコンテンツはiPhoneで動かない」ので、対応Playerが出るのを首を長くして待っていただけの自分が恥ずかしくなりました。こんな方法があったなんて!

さて、話がよくわかんないよーという方のために、ちょっと説明します。JavaScriptが分かる方は大体どんな仕組みか分かっていると思いますので、不要な方は読み飛ばしてください。

これはGordonさんという方が、自前で作っているJavaScriptにしかけがあります。まずは以下のページに行ってみましょう。英語ですが、ざざっとみればなんとなく分かるはずです。
Ajaxian ≫ Gordon: Flash Runtime Implemented in Javascript

リンク先の内容をみると、HTMLの記述にこんなことが書いてあります。

GordonさんのJSライブラリをHTMLから呼び出して、引数にFlashのコンテンツと表示するときのサイズを与えています。
ではMovie.jsを見てみましょう。http://github.com/tobeytailor/gordon/blob/master/src/Movie.js
どうやらここでswfの中味を解析しているようです。

この解析部分がまだ新しいバージョンのFlashに対応していないため、FlashPlayer1か2でのパブリッシュしたものでしか動かないようです。

今日のお昼ごろGizmodoでも紹介されていましたね。まさに発想の転換だと思います!!