0

javascriptからflashに2つの変数を渡そうとしています。私はこれらを受け取るためにこのias3のようなことをすることができると思いました。

ExternalInterface.addCallback("callAs", muscle, tension);

悲しいことに、これはエラーをスローします

1137:引数の数が正しくありません。予想されるのは2つ以下です。

毎回2回呼び出す代わりに、2つの変数を送信する方法はありますか?

前もって感謝します!樹脂

4

1 に答える 1

7

可能です。

ExternalInterface.addCallback("theFunctionNameInJavascript", theFunctionNameInActionscript);

function theFunctionNameInActionscript(param1:String, param2:String):void {
//do something with param1;
//do something with param2;

}

次に、Javascriptでは次のようなものになります...

<!-- work out if we are on Mac or PC -->
function getFlashMovie(movieName) {
    var isIE = navigator.appName.indexOf("Microsoft") != -1;
    return (isIE) ? window[movieName] : document[movieName];
}

function theFunctionNameInJavascript(swf, param1, param2) {
    getFlashMovie(swf).theFunctionNameInActionscript(param1, param2);
}

そして、あなたはこれを次のようなものでトリガーします...

<form action="javascript:theFunctionNameInJavascript('idNameOfYourSWF', 'thisisparam1', 'thisIsParam2')" id="form">
<input type="submit" value="Click Me" />
</form>
于 2012-07-05T12:35:28.893 に答える