リファレンス 2007年04月09日

swfオブジェクトをJavaScriptでアクティブにする (swfIE)

swfIEInternet Explorerでは、Flashコンテンツを一度クリックしないとアクティブ化されない場合があります。 SWFObject など利用して回避することができます。しかし、既に埋め込んである object タグを変更するのは手間がかかります。

また、Adobe Flashなど利用していれば、object 埋め込みようのコードはパブリッシュ時に出力されるので、そのまま利用したほうが楽です。手間をかけずに回避するには下記のJavaScriptを利用します。

</body>付近で呼出を行えば、コンテンツ中の id="" 割り当てのある <object を対象に処理が行われます。<embedタグにはname=""に<object id= と同じ名称を指定してください。

/*--- swfie.js ---*/
var nodes = document.getElementsByTagName('object');
var i = nodes.length;
while(i--) {
   var obj = document.getElementById(nodes[i].id);
   if(obj && obj.outerHTML) {
      obj.outerHTML = obj.outerHTML;
      document[nodes[i].id].Play();
   }
}

ダウンロード:swfIE.js

Creative Commons License

Firefox などIE以外のブラウザでは outerHTML はサポートされていない為、問題のあるIEだけで事実上処理が行われます。 JavaScriptコードを貼り付けるか、swfIE.js をダウンロードして自身のサーバに置いて利用できます。

サイトの最新情報をRSSで受信できます
関連記事 リスト

MP3を再生してスペクトルグラフを表示するFlash

Web上でMP3など配信する場合にスペクトル(Spectrum)をサウンドに合...続きを読む

swfオブジェクトをJavaScriptでアクティブにする

Internet Explorerでは、Flashコンテンツを一度クリックしない...続きを読む

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

Flashのコンテンツをサイトやブログに設置する際、<object or...>続きを読む

画像をリアルタイムにフィルタ加工するJavaScript

スタイルシートやJavaScriptを利用して、角丸、シャドウなどのフィルタを...続きを読む

非同期に読込み写真をギャラリー表示するFlash

写真などを公開しているなど、ギャラリーのように凝った見せ方をしたい場合、簡単に...続きを読む

SWFUploadをサイトに設置する

SWFUploadを利用する事で、Webサイト上で、複数ファイルの選択ダイアログ...続きを読む

ページTOPへ