2

Iは、フラッシュオブジェクトはJavaScriptでOOP構造内に追加された場合、フラッシュからのJavaScript関数を呼び出すことはできません。要するにコード:FlashでのExternalInterface呼び出しがジャバスクリプト

:JavaScriptで

if (ExternalInterface.available) { 
    ExternalInterface.call("flashMessages", "ready"); 
} 

コード:

function fbTeaserClass(){ 

    function loadVideoObject(){ 
     ... 
     swfobject.embedSWF(sitebase+'/FocusVideo.swf', 'myContent'+uniqueid, '100%', '100%', '9.0.0', 'expressInstall.swf', flashvars, params, attributes, outputStatus); 
    } 

    this.flashMessages=function(message){ 
     alert('called'); 
    } 

} 

Flashが読み込まれますが、JavaScript関数の呼び出しが受信されません。誰でも何が間違っているのでしょうか?

ほとんどのスコープの問題

答えて

1

、あなたの関数がオブジェクト内にある、「fbTeaserClass.flashMessage」を呼び出してみてください、あなたはまた、別のレベルでフラッシュを初期化する必要があるかもしれません。

+0

あなたは正しいです。 flashMessages(){..}という関数が呼び出され(オブジェクトの外側に配置されます)、FireFoxではなく(他のブラウザから警告が送られます)。それはFireFoxの共通の問題ですか? – Bert

+0

'alert()'以外の処理を行うようにコードを変更した場合、例えばページ上の何かを変更すると、FireFoxで動作しますか? – Orbling

+0

FireFoxにはこれにいくつかの問題があります。あなたの 'attributes'変数には何がありますか? 'SWFObject'呼び出しにすべての実行を追加することができれば便利です。私は私の属性で – Orbling

関連する問題