2012-04-14 10 views
0

私は、Flashビデオを実行するためにEMBED要素を使用します。私は にJQueryを使ってそれを統合しました(以下のコードの断片を参照してください)。HTML5のFlashビデオの再生では、ONENDEDイベントは機能しません

フラッシュが実行されていますが、1回だけ実行して終了した場合は、 (ONENDEDイベントで)通知されます。代わりに、それは常にLOOPモード で実行されており、イベントを受信しません。

HTML5のVIDEO要素では、mp4とogvでうまくいきます。

どうすればFlashでも動作させることができますか?

flashobj = document.createElement('embed'); 
flashobj.src = 'flash/bmw_i8_concept.swf'; 
flashobj.type = "application/x-shockwave-flash"; 
flashobj.width=500; 

flashobj.onended = function(e) { 
    alert("flash ended: " + e); 
} 

$(media_container).append(flashobj); 

答えて

0

あなたがそうするExternalInterface方法を設定しない限り、Flashムービーは、JavaScriptのイベントを送出していないので、動作しません。

ムービーがスクリプトアクセスを明示的に許可しない限り、JavaScriptからFlashムービーを停止することもできません。ムービーがループしないようにする最も簡単な方法は、ソースFLAにアクセスできる場合は、stop();ステートメントをFlashムービーの最後のフレームに挿入することです。

+0

ありがとうございます。 – user1333457

+0

stop()ステートメントが存在すると、HTML5 ONENDEDイベントが生成されますか?市販のビデオコンバーターソフトウェアがあるかどうか知っていますか?例えば、 mp4からswfへの変換? – user1333457

+0

SWFファイルはビデオではないため、両方のカウントではありません。実行可能なバイナリです。 JavaScriptにイベントを取得する唯一の方法は、ExternalInterfaceを使用することです。 – weltraumpirat

関連する問題