>>195 御意。要するにFlashを埋め込んだHTML自体をJSP等で吐き出す場合、
そこにかかれているURL自体を動的に書き換える事で、おっしゃるような処理ができるものと思われます。
また、以前自分が書いた方法は、埋め込まれたFlashに対して、
{ActiveXインスタンス}.SetVariable(変数名,値);
とすると任意の値をJavaScriptからActionScriptへ渡す事ができるので、
この後、
{ActiveXインスタンス}.GotoFrame(フレーム値);
{ActiveXインスタンス}.Play();
とする事で、貴殿が望むような結果を得る事もできると思われます。
尚、蛇足(で、ちょっとトリッキーな話)ですが、
この、SetVariable(変数名,値)を使うと、JavaScriptから、ActionScript内の任意のメソッドを呼び出す事ができます。
例えば、ActionScript上で以下のような変数を用意して...
// ActionScript内
function CFoo() {
this.param = null;
this.addProperty("someMethod",
function() {// getter
return this.param;
}
,
function(arg) {// setter
this.param = arg;
}
);
}
var oFoo = new CFoo();
その後、
// これはJavaScript内
{ActiveXインスタンス}.SetVariable("oFoo.someMethod",値);
とすると、ご想像通り「ActionScript内のoFoo.someMethodのセッタ」が動きます。
後はこのプロパティハンドラをわかり易い名前にし、そのハンドラ内で任意の処理を書けば、
「JavaScriptからActionScriptを完全にコントロールできる」という事になります。
...って、FlashMX限定ですが。
失礼、インデントが死にました。
// ActionScript内
function CFoo() {
this.param = null;
this.addProperty("someMethod",
function() { // getter
return this.param;
}
,
function(arg) { // setter
this.param = arg;
}
);
}
var oFoo = new CFoo();