web-dev-qa-db-ja.com

ブラウザに対応した方法でページにFlashをきちんと埋め込むにはどうすればよいですか?

デザイナーからFlashオブジェクトを受け取ると、<object>タグと<embed>タグの両方とJavaScriptのヒープ全体を含むサンプルHTMLページが付属しています。このコードをコピーしてWebページに貼り付けると機能しますが、コードはごちゃごちゃに見えます(そして、非常にたくさんあります!)。余分なコードを削除して、<embed>または<object>のいずれかを単独で試すと、一部のブラウザーでは機能しますが、他のブラウザーでは機能しません。

すべての主要なブラウザで機能する、きちんとした最小限の方法はありますか?

8
Mark Hatton

SWFObject はあなたが探しているものです。これは、クロスブラウザーのすべての面倒な作業を行うJavaScriptライブラリーです。 JavaScriptファイルをページに含め、ソースで置換する要素を作成し、その要素の名前と.swfファイルへのパスをswfobjectに伝えます。

残りは行います。

 <script type = "text/javascript" src = "swfobject.js"> </ script> 
 <script type = "text/javascript"> 
/*パス、置換要素、幅、高さ、最小フラ​​ッシュバージョン*/
 swfobject.embedSWF( "myContent.swf"、 "myContent"、 "300"、 "120"、 "9.0.0"); 
 </ script> 

必要なのはそれだけです。まあ、それとその上にid="myContent"を持つ要素(通常はdiv)。そのIDを持つ要素は、現在のブラウザが好む埋め込みタグの設定に置き換えられます。

ドキュメント は素晴らしいです。すぐに起動して実行できます。また、思わぬ障害が発生した場合は、別の質問をしてください。

5
Bryson

StackOverflowでこれに対するいくつかの素晴らしい答えが既にあります: https://stackoverflow.com/questions/2254027/which-browsers-support-the-embed-and-object-tags

4
Mark Hatton

Flash Satay をご覧になりたいかもしれませんが、これは日付が付けられていますが、Flashをクロスブラウザ方式で動作させる際の問題を非常にうまく示しています。

1
Grant Palin

次のリソースのいずれかを使用できます。

Flash Embedding Cage Match -問題の詳細を説明し、長所と短所とともにいくつかの回避策を提案します。

swfobject library[推奨]-上記の記事からインスピレーションを得て、上記の記事が演習として残した機能を追加します。

SWFObject 2 HTMLおよびJavaScriptジェネレーター -swfobjectマークアップ(HTMLおよびJavaScript)を生成するウィザードです。 「静的公開」を選択してswfobjectを捨て、生成されたマークアップからすべてのJavaScriptタグを削除できます。

0
Salman A