Flashのswfファイルをサイトに組み込む時に、Flashからパブリッシュを実行してHTMLとJavascriptソースを出力します。というのは遠い昔の話。今ではswfobjectを利用するのが常識となりましたね。
久しぶりにFlashを触る機会があり、swfobjectの公式サイトに行くと最新のバージョン2.2が公開されていました。以前とは組込み方法も異なるようなので、改めてメモです。
まずは、以下からソースをダウンロードします。swfobjectもGoogle codeで管理されるようになったんですね。
swfobject – Project Hosting on Google Code
ここでは、現時点で最新版のバージョン2.2を取得します。
まず初めに、ダウンロードしてきたファイルを解凍し、その中の「swfobject.js」を読み込みます。
<script type="text/javascript" src="swfobject.js"></script>
次に、実際にswfファイルを挿入する箇所に以下のコードを埋め込みます。
<object id="myId" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="300" height="200"> <param name="movie" value="test.swf" /> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="test.swf" width="300" height="200"> <!--<![endif]--> <div> <h1>Alternative content</h1> <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>
上記は「test.swf」を挿入する例です。「test.swf」を指定するのが2箇所ありますね。またtest.swfのサイズをwidthとheightで指定しますが、こちらも2箇所あります。あと、objectタグのidは任意です。
これだけでswfファイルを組み込むことができます。簡単ですね。
さらに、上記の例では、ブラウザにFlashプレイヤーが入っていない場合の例外処置がありますが、Flashプレイヤーのバージョンが低い場合に最新版へのアップグレードを呼びかける処置も可能です。そのためには、swfobject.jsを読み込んだ後に、以下の記述を追加すればよいです。
<script type="text/javascript"> swfobject.registerObject("myId", "10.0.0", "expressInstall.swf"); </script>
第一引数は先ほどobjectタグに指定したidです。第二引数の10.0.0は、それ以上のバージョンのFlashプレイヤーが必要であることを示しています。第三引数のexpressInstall.swfはswfobject.jsに同封されており、プレイヤーのバージョンが満たない場合にはこのswfファイルが表示され、アップグレードを促します。