HTMLにフラッシュを埋め込む方法が多すぎますが、どちらが最適ですか?要件は次のとおりです。
- クロスブラウザのサポート
- 代替コンテンツのサポート(ブラウザでフラッシュがサポートされていない場合)
- FlashPlayerの特定のバージョンを要求する可能性
SWFobjectについて読んでいますが、誰かがそれを使用/テストしましたか?
HTMLにフラッシュを埋め込む方法が多すぎますが、どちらが最適ですか?要件は次のとおりです。
SWFobjectについて読んでいますが、誰かがそれを使用/テストしましたか?
私が取り組んでいるプロジェクトでは、チャームのように機能するSWFobjectを使用しています。これにより、特定のバージョンを確認したり、フラッシュがサポートされていない場合は代替コンテンツを表示したりできます。
var fn = function() {
if(swfobject.hasFlashPlayerVersion("9.0.115"))
{
var att = { data:"flash.swf", width:"y", height:"x" };
var par = { menu: "false", flashvars: "" };
signUp = swfobject.createSWF(att, par);
}
}
swfobject.addDomLoadEvent(fn);
flashembedの使用を強くお勧めします。複雑な使い方をすることなく、必要なものすべてをサポートしています。これはもともとflowplayerを埋め込むために開発されましたが、これもお勧めできますが、どのフラッシュ ファイルでも機能します。
私がそれを使用する方法の例:
flashembed("frontPageFlash",
{
src: "img/flash/FrontPage.swf",
width: "480",
height: "600",
bgcolor: "#ebebeb",
version: [9,0],
expressInstall:'scripts/expressinstall.swf'
},{
head1: "<%= frontPageFlashHead1 %>",
head2: "<%= frontPageFlashHead2 %>",
pitch1: "<%= frontPageFlashPitch1 %>",
pitch2: "<%= frontPageFlashPitch2 %>"
}
);
そして、それが埋め込まれている場所に私は簡単に言います:
<div id="frontPageFlash"></div>
ええ、私たちはそれを私たちのサイトのフラッシュ検出に使用しており、IEでフラッシュコントロールをアクティブにするために通常クリックしなければならない問題を回避して、非常にうまく機能します。複数のオペレーティングシステム(Windows XP、Windows Vista、Windows Server 2003、Windows Server 2008、Mac OSX、Linux)の多くのブラウザー(IE、Firefox、Opera、Safari、Chromeのさまざまなバージョン)でテストしました。正しく設定されているので、すべてで完全に機能します。
私自身、<embed> および <object> タグと組み合わせて SWFObject を使用しています。HTML 埋め込みを含める理由は、SWFObject と flashembed が Javascript に依存して DOM を更新するためです。Flash をインストールしているすべてのユーザーが Javascript を有効にしているわけではありません。