0

swfobject.js バージョン 2.2 を使用しています。

Javascript コードで最後のパラメーター (callbackFn) をローカル関数に設定して、swfobject.embedSWF を呼び出しています。

その後、次の 2 つの異なるルーチンが呼び出されます。

これら 2 つの違いは何ですか?また、ビデオがアップロードされ、再生する準備ができていることを確認するには、どちらを使用すればよいですか?

これを尋ねているのは、Safari ではコールバック関数だけが呼び出されるため、それに依存しても安全かどうかを知る必要があるからです。

4

1 に答える 1

0

onYouTubePlayerReadyは SWFObject メソッドではなく、YouTube のプレーヤー API によって提供される独立したメソッドです。

問題はおそらくタイミングにあると考えonYouTubePlayerReadyられます。これは YouTube プレーヤー API の一部であるため、SWF の読み込みが完了し、ExternalInterface が Flash Player によって初期化されるまで利用できません。

SWFObjectは、 がページのマークアップに正常に追加されたcallbackFnときに実行されるだけで、SWF が読み込まれたことを示しません。実際、SWFObject は、SWF が読み込まれるかどうかにまったく注意を払いません。<object>

ただし、少し追加の JavaScript を使用すると、SWF をポーリングして読み込みが完了したかどうかを検出し、カスタム スクリプト (この場合はonYouTubePlayerReady) を実行できます。

このスタック オーバーフロー スレッドでは、ポーリングについて説明しています。ここでは、SWFObject を介して SWF を埋め込んだ後にポーリングする方法を説明する短いチュートリアルを示します。

于 2012-09-04T05:42:51.037 に答える