Chrome 23.0.1271.97を使用して、jQueryを使用してJavascriptで開発しています。私はフレックスを持ってい<object>
ます、HTMLは次のとおりです:
<div id="chartdiv" style="display:none;">
<object type="application/x-shockwave-flash" id="barchart" data="barchart.swf" style="width:100%;height:100%;">
<param name="movie" value="barchart.swf" />
<param name="quality" value="high" />
<param name="allowScriptAccess" value="always" />
<param name="wmode" value="transparent" />
</object>
</div>
divは通常非表示ですが、オブジェクトはとにかくonLoadで初期化されます。ただし、アプリが読み込まれると、このdivが表示され、すべてが機能します。問題は、その時点から再び非表示になり(初期化されていないよう$div.hide()
に非表示になり、後で再表示された場合)、Flexオブジェクトメソッドにアクセスできないことです。
取得しObject #<HTMLObjectElement> has no method 'blah'
ます。変更されたようですが、何が原因かわかりません。
では、何が変わったのでしょうか。良い質問。ロードが成功すると、オブジェクトは機能し、コンソールでは次のようになります。
<object type="application/x-shockwave-flash" id="barchart" data="barchart.swf" style="width:100%;height:100%;">
</object>
試行が失敗した場合(表示、非表示、および戻った後)、オブジェクトは次のようになります。
<object type="application/x-shockwave-flash" id="barchart" data="barchart.swf" style="width:100%;height:100%;">
<param name="movie" value="barchart.swf">
<param name="quality" value="high">
<param name="allowScriptAccess" value="always">
<param name="wmode" value="transparent">
</object>
それは私が間違った場所を探しているのかもしれません。フロントエンドのJavascriptコードをステップ実行しましたが、jQueryを介してオブジェクトを非表示にする以外に、オブジェクトを変更するための呼び出しはないようです。Flexオブジェクトは表示されているかどうかわからないと言われています。コードを確認する前に、正しい方向に進んでいることを確認したいと思います。