0

Open Flash Chart 2 を使用して、Web サイトにグラフとチャートを表示しています。同じページからグラフの JSON データを読み込もうとしています。それにはいくつかの方法があります。

  • チャートの get-data プロパティを使用し、json を返す javascript メソッドを渡します
  • フラッシュ チャートがデータの読み取り元として認識している open_flash_chart_data メソッドを使用します。

すべてが FireFox、Chrome などで正常に動作するようです。問題のある唯一のブラウザは IE (私は IE 8 を使用しています)

オープン ソースを少し調べてみると、ライブラリが ExetrnalInterface を使用して JavaScript メソッドを実行していることがわかりました。ExternalInterface は利用できるようですが、IE でメソッドを実行すると null が返されます。

この問題は Flash 開発者コミュニティで既に知られているようです。そのため、いくつか試してみました (ただし、ライブラリで使用できない解決策がいくつかあります。たとえば、embed 要素の一意の ID です。ライブラリが生成します)。

結論として、私はおそらく私の問題に対する簡単な解決策を見逃しています。

私のコード:

これは、javascript からオープン フラッシュ チャートへの jquery 呼び出しです。

$('#myDiv').flash
(
    {
        src: ofc_swf,
        width: "400",
        height: "250",
        allowscriptaccess: "always",
        wmode: "transparent",                 
        flashvars: {"get-data": "getFlashJson"}                       
    },
    {
        version: 8
    }
);

これは、チャートの JSON ソースを返す JavaScript メソッドです。

function getFlashJson()
{
    var val = $("#myJson").val();
    return val;
}

これについて何か助けていただければ幸いです。

ありがとう

4

2 に答える 2

0

私はこの問題を抱えていて、解決策を見つけました。

phpファイルでムービーIDの前にあるフラッシュコードの部分を削除しie_、SWFOBJECTjavascriptコードを次のように変更します。

function findSWF(movieName) {
  if (navigator.appName.indexOf("Microsoft")!= -1) {
    return window[movieName];
  } else {
    return document[movieName];
  }
}
于 2011-05-10T08:01:22.927 に答える
0

swfobject.js を更新してみてください。私にとっては、バージョン 2.2 で問題が解決しました。

于 2010-11-08T09:03:55.760 に答える