SWFオブジェクトをJavaScriptで簡単に記述する (SWFObject)

2007年3月8日(木) 10:30

SWFObject
Flashのコンテンツをサイトやブログに設置する際、<object or <embed タグを記述するが意外と面倒であったりする。製作会社などに依頼したFlash形式のバナーなどHTMLコードと共に納入してもらえれば問題ないが、それでも入れ替え作業はHTMLを編集することになる。

Flashのオブジェクト記述を SWFObject を利用する事で、簡単に記述できるようになる。また、必要に応じてオプションパラメータの指定もJavaScriptコードで完結するので、Flashコンテンツの運用管理がグッと楽になる。

デモの動作
SWFObject 動作デモ
デモ画面のHTMLソースをご覧いただくと、HTML記述にFlashを指定した<object や <embed タグが無いのが分かる。

SWFObjectは指定されたHTML中のコンテナタグにFlashオブジェクトのコードを出力してくれる。 <div id="flashcontent" をあらかじめ用意しておき、SWFObjectの出力指定(.write)の際に flashcontent を指定すればよい。

呼出に必要なパラメータは swfファイルパス、swfオブジェクトID、幅、高さ、Flashバージョン、背景色などとなっている。ドキュメント内に詳しく解説があるので、参照していただきたい。

SWFObjectを利用する上で注意したいのが、指定したコンテナタグの内部をJavaScriptで書換える事で、検索エンジンによるクロール結果とブラウザ表示したときの内容が一致しなくなる。利用する上で、この点を考慮して適切な利用をする必要がある。

Adobe - AC_RunActiveContent.js
Internet Explorerでは、Flashコンテンツを一度クリックしないとアクティブ化されない場合があります。その回避策として紹介されている方法がJavaScriptで、<object や <embed タグを出力する方法です。

Adobeでダウンロードできる AC_RunActiveContent.js を利用しても、SWFObject 同様の事ができますので、是非参照して見てください。

関連する記事