9

フラッシュでactionscriptを使用してjavascript関数をトリガーするにはどうすればよいですか?

目標は、フラッシュムービーからjQuery機能をトリガーすることです

4

2 に答える 2

13

ExternalInterface -Classを見てください。
AS3言語リファレンスから:

ExternalInterfaceクラスはExternalAPIであり、ActionScriptとFlash Playerコンテナー(JavaScriptを使用したHTMLページなど)との間の直接的な通信を可能にするアプリケーションプログラミングインターフェイスです。アドビは、すべてのJavaScript-ActionScript通信にExternalInterfaceを使用することをお勧めします。

そしてそれはこのように機能します:

ExternalInterface.addCallback("sendToActionScript", receivedFromJavaScript);
ExternalInterface.call("sendToJavaScript", input.text);

パラメータを送信してコールバックを受け取ることができます...かなりクールですよね?;)

私が知っているように、それはAS2でも動作します...

于 2008-10-06T12:11:05.433 に答える
4

Jochenが言ったように、ExternalInterfaceは進むべき道であり、AS2で動作することを確認できます。

ナビゲーションまたはフラッシュが置かれている領域に影響を与える何かをトリガーすることを計画している場合は、フラッシュから呼び出す関数から直接トリガーしないでください。Flashは、呼び出す関数からの戻り値を期待します。関数の完了時にFlashオブジェクトが存在しない場合、Flashプラグインはクラッシュします。

ナビゲーションを実行したり、コンテンツを変更したりする必要がある場合は、setTimeout呼び出しを(js関数に)追加できます。これにより、新しいスレッドが作成され、フラッシュに期待される戻り値が与えられます。

于 2008-10-06T12:28:00.063 に答える