1

フラッシュするのは非常に新しいです。私は XSPF ミュージック プレーヤー (AS2 で書かれた、ここ ( http://musicplayer.sourceforge.net/ ) にあるスリム バージョン) を使用して、Web サイト上の mp3 のリストを再生しています。トラックをロードするたびに JavaScript を呼び出す必要があります。私は ExternalInterface を介してこれを実行しようとしていますが、これまでのところ運がありません。私のセットアップは次のとおりです。テストサーバーも収容しているLinuxマシンでサイトを書いていますが、Windowsでフラッシュを編集しています。私は、Firefox 3.0.10 と同じ Linux ボックスでサイトをテストしています。HTML とアクション スクリプトはここ ( http://pastebin.com/f36b1da0e ) に投稿されています。誰かが私のコードに何か問題があると思いますか? なぜそれが機能しないのかについて何か考えはありますか? 私の基本的な設定の何かのように感じます...

ありがとう、ダン

4

1 に答える 1

0

私はあなたのコードをざっと見てみましたが、問題ないようです(とにかくアクションスクリプト)。私が言いたいのは、swf を埋め込むさまざまな方法を試すことです。何年も前に(すべての詳細を思い出せません)、外部インターフェイスをさまざまなブラウザーでテストしていましたが、IEでは機能することもありましたが、Firefoxでは機能しませんでした.swfを埋め込む別の方法を試してみると、 firefox でも IE ではないか、IE 6 で 7 ではありません!

とても迷惑でした。とにかく、当時の両方の主要なブラウザーで機能することがわかった唯一の方法 (クロムは出ていませんでした) は、アプリを公開するときに flexbuilder から作成される HTML を使用することでした。もちろん、少し変更する必要がありました(繭とxslを使用しているため)が、うまくいきました。

(それ以来、swfobjectは改善されたと思います。私があなただったら、それも試してみるかもしれません)

flexbuilder の HTML テンプレートをhttp://pastebin.com/f79b5b3f3に投稿しました。AC_OETags.js ファイル ( http://pastebin.com/f3937a336 ) と playerProductInstall.swf (flexbuilder をダウンロードする必要がある場合があります) が必要です。これを取得するには)。


以下のコメントのコード

<mx:HTTPService id="mySerivceCall" 
    url="{'myPHPFile.php'}"
    result="resultHandler(event)" 
    fault="faulthandler(event)"
    showBusyCursor="false" 
    resultFormat="e4x"> 
    <mx:request>
        <time>{new Date().getTime()}</time>
    </mx:request>
</mx:HTTPService>

私は常に httpservice に時間を追加し、キャッシュされないようにします (これは IE が非常に苦手です)。他のパラメータをリクエスト セクションに挿入するだけで、結果のフォーマットは結果が e4x でフォーマットされた XML であることを flex に伝えるだけで、XML の処理が非常に簡単になります。

于 2009-05-15T08:14:09.857 に答える